Základy Linuxu -1- Používateľské prostredia operačných systémov - Linux (prednášky)

Size: px
Start display at page:

Download "Základy Linuxu -1- Používateľské prostredia operačných systémov - Linux (prednášky)"

Transcription

1 Základy Linuxu -1- Používateľské prostredia operačných systémov - Linux (prednášky)

2 Obsah Základy Linuxu -2- Obsah 1. Úvod do používateľských rozhraní operačných systémov Vývoj operačných systémov História Linuxu Princíp Linuxu GNU/Linux Distribúcie Linuxu Ubuntu SUSE Knopix Debian CentOS Práca s príkazovým riadkom Príkazový interpretátor (shell) Príkazy Spúšťanie príkazov Dokončenie príkazov Rekurzívne príkazy Pomoc a manuálové stránky whatis man info Základné príkazy Midnight commander (MC) SSH a Putty Toky, rúry, presmerovania Presmerovanie vstupu a výstupu Štandardné presmerovanie chýb Rúra (pipe) Zástupné znaky (wildcards)... 29

3 Základy Linuxu Správa užívateľov Typy užívateľov Základné súbory užívateľov /etc/passwd /etc/shadow /etc/groups Príkazy na prácu s užívateľmi adduser useradd deluser userdel usermod passwd Nástroje sudo a su sudo su Úlohy k správe užívateľov Súborový systém Adresárová štruktúra Cesta Špeciálne adresáre Príkazy na prácu so súbormi a adresármi touch ls (list) pwd (print working directory) cd (changing directory) cp (copy) mv (move) mkdir (make directory) rm (remove) rmdir (remove directory) Prístupové práva chmod (change mode)... 53

4 Základy Linuxu chown (change owner) chgrp (change group) umask Úlohy k správe súborového systému Textové editory a práca s textom Editor vi Editor nano Príkazy na prácu so súbormi cat tac echo more less head tail cut du file find locate grep wc sort tr Úlohy Správa procesov Úvod do procesov v Linuxe Zobrazenie procesov a ich stavov ps (process status) pstree top Stavy procesov Práca s procesmi... 80

5 Základy Linuxu & jobs sleep bg fg Zmena priority procesu nice renice Signály a ich funkcia pri riadení procesov Kill Úlohy Správa programov Balíčkovacie systémy Balíčky Metadáta balíčka Závislosti balíčkov Debian balíčkovací systém Nástroj APT Nástroj DPKG Red Hat balíčkovací systém YUM balíčkovací systém Práca s archívmi TAR (TapeARchiver) ZIP Príprava a inštalácia programov zo zdrojov Konfigurácia programu (configure) Vytvorenie programu (make) Inštalácia programu (make install) Úlohy Plánovanie úloh Plánovanie opakovaných úloh Plánovanie jednorázových úloh Úlohy

6 Základy Linuxu Logovanie Démon Syslogd (system logger daemon) Zariadenie (facility) Priorita (priority) Akcia (action) Úlohy Správa siete a sieťových rozhraní Základné pojmy z oblasti počítačových sietí Nástroj ip Inštalácia Nástroj ip Nastavenie prístupu k počítačovej sieti v Linuxe Sieťové rozhrania MAC adresa a ARP protokol IP adresa Nastavenie DNS resolvera Smerovanie v Linuxe Nastavenie smerovania Smerovacia tabuľka Funkcia smerovania Úlohy

7 Základy Linuxu Úvod do používateľských rozhraní operačných systémov 1.1. Vývoj operačných systémov Operačný systém - je základné programové vybavenie počítača. Je to rozhranie, ktoré umožňuje užívateľovi komunikovať s počítačom, je teda akýmsi prostredníkom medzi človekom a strojom. Funkcionality operačného systému: kontrola a alokovanie pamäte, pridelenie priority systémovým požiadavkám, kontrola vstupných a výstupných zariadení, umožnenie pripojenia do siete a správa súborov. Obr. 1 Vývoj operačných systémov (Windows)

8 Základy Linuxu -8- Obr. 2 Vývoj operačných systémov (Linux) 1.2. História Linuxu Autorom operačného systému Linux je Linus Torvalds (fínsky študent). Jeho pôvodná verzia bola v priebehu asi desiatich rokov zdokonaľovaná veľkým počtom ľudí na celom svete. Linux predstavuje verziu operačného systému Unix pre osobné počítače s procesorom Intel, Alpha a ďalšie a bol kompletne vytvorený znovu na jeho vývoji sa spoločnosti Unix System Laboratories a Berkeley Software Distribution vôbec nepodieľali. Zaujímavé je, že sa na vývoji operačného systému Linux podieľali ľudia na celom svete od Austrálie po Fínsko a všetci dúfali, že sa Linux podarí uviesť do podoby schopnej konkurovať ostatným operačným systémom typu Unix. Vlastný projekt operačného systému Linux začal výskumom vlastností procesoru 386. Systém je navrhnutý tak, aby maximálne využíval všetky vlastnosti tohto procesora. Operačný systém Linux podporuje väčšinu programového vybavenia napísaného pre Unix, vrátane systému X Window. Tento systém bol vytvorený na Massachusetts Institute of Technology tak, aby umožňoval operačným systémom Unix vytvárať grafické okná a interaktívne spolupracovať medzi sebou. Dnes platí, že je systém X Window implementovaný pre každú verziu operačného systému Unix. Okrem štandardov, ktoré predstavujú verzie System V a BSD, existuje sada štandardizačných dokumentov publikovaná úradom pre štandardizáciu IEEE, ktorá má označenie POSIX. Operačný systém Linux spĺňa väčšinu podmienok uvedených v dokumentoch POSIX-1 a

9 Základy Linuxu -9- POSIX-2. Pritom má v mnohých aspektoch vlastnosti podobné systému BSD, ale má tiež vlastnosti, ktoré nájdete pri systéme System V. Stručne povedané, pokiaľ ide o štandard, predstavuje operačný systém Linux kombináciu (a väčšina ľudí sa domnieva, že veľmi dobrú) všetkých troch štandardov. Väčšina programového vybavenia dodávaná s operačným systémom Linux pochádza od nadácie Free Software Foundation a je súčasťou projektu GNU. Hlavným cieľom projektu GNU je jednak sprístupniť programové vybavenie pôvodne napísané pre operačný systém Unix užívateľom ostatných operačných systémov, jednak vytvoriť prenositeľný operačný systém, ktorý bude mať prakticky rovnaké vlastnosti ako Unix. Prenositeľný znamená, že tento operačný systém pobeží na všetkých počítačových platformách (nech sú vybavené procesorom Intel, PowerPC, Alpha či iným). Tento operačný systém má označenie Hurd. Hlavný rozdiel medzi operačným systémom Linux a operačným systémom Hurd nespočíva v užívateľskom rozhraní, ale v programátorskom rozhraní Hurd predstavuje moderný operačný systém, zatiaľ čo Linux je operačným systémom založeným na filozofii staručkého Unixu Princíp Linuxu Základom v systéme LINUX je súbor a vlastne všetko v LINUX-e je súbor, a to aj vrátane hardwaru. Toto je asi jeden z najväčších rozdielov medzi svetom LINUX-u a inými operačnými systémami. Filozofia operačného systému LINUX sa od filozofie ostatných operačných systémov líši v jednej veci. Autori LINUX-u sa nepokúšali predvídať všetky potreby všetkých používateľov. Namiesto toho sa pokúsili navrhnúť operačný systém tak, aby si každý používateľ ľahko dokázal prispôsobiť správanie sa operačného systému podľa vlastných potrieb. Konfigurácia jednotlivých programov operačného systému LINUX sa nachádza v tzv. konfiguračných súboroch. Niekedy sú nazývané ako ini files alebo rc files, prípadne dot files pretože obyčajne ich meno začína bodkou. Súbory začínajúce. sú tzv. systémové súbory a obvykle ich pri zobrazení obsahu adresára nevidíte. Tieto konfiguračné súbory sú uložené v textových súboroch, ktoré je možno jednoducho upravovať. Práca v LINUX-e je založená na množstve malých ale spoľahlivých programov, ktoré obvykle robia iba jednu vec, ale robia ju dobre. Tieto malé programy sa obvykle môžu spájať (reťaziť) a vykonávať aj omnoho zložitejšie úlohy, ako by sa dalo na prvý pohľad povedať.

10 Základy Linuxu -10- LINUX je case senzitívny, čo znamená, že závisí na veľkosti písmen. Je rozdiel medzi ps a PS. Zdroj: Linux kernel ubiquity CC BY-SA 3.0, GNU/Linux Termín Linux sa vzťahuje na jadro Linuxu, ale v bežnej reči sa používa na opis celej rodiny operačných systémov UNIXového typu, ktoré sú založené na linuxovom jadre, zatiaľ čo knižnice a nástroje pochádzajú zvyčajne z projektu GNU (takéto zoskupenie sa označuje ako GNU/Linux). Linuxové distribúcie často zoskupujú základný systém s veľkým množstvom programov spravovaných systémom balíčkov. GNU/Linux teda predstavuje jadro operačného systému + ďalší softvér s otvoreným kódom (knižnice a nástroje). Softvér s čiastočne otvoreným kódom nepatrí do GNU/Linux. GNU predstavuje ďalší softvér s otvoreným kódom a Linux predstavuje jadro operačného systému Distribúcie Linuxu Linuxová distribúcia alebo distribúcia Linuxu, prípadne iba distribúcia, je označenie operačného systému zloženého z linuxového jadra a sady slobodného alebo aj komerčného softvéru. Obyčajne obsahuje sadu nástrojov GNU, X server, kompletné desktopové prostredie (napríklad KDE, Gnome alebo XFCE), kancelársky balík, (napr. OpenOffice.org, KOffice

11 Základy Linuxu -11- alebo Gnome Office), internetový prehliadač (napr. Mozilla Firefox), komunikačné a iné nástroje. Dnes je súčasťou skoro vždy tiež preklad do niekoľkých jazykov. Linuxové distribúcie boli spočiatku zložené iba zo slobodného softvéru, postupom času sa však objavili aj komerčné distribúcie, poskytujúce lepšiu podporu používateľom. Prevažná väčšina súčasných distribúcií je však aj naďalej slobodná. Odvodzovanie umožňuje licencia GNU GPL, podľa ktorej je možné použiť zdrojové balíčky rôznych distribúcií, upravovať ich a upravené verzie šíriť pri dodržaní podmienok Ubuntu Vznik Ubuntu je datovaný na september Ako relatívny nováčik na Linuxovej scéne sa počas niekoľkých nasledujúcich rokov stal najpopulárnejšou distribúciou Linuxu. Svojimi vlastnosťami sa vyrovná plateným operačným systémom, dostupným na trhu. Projekt je dielom Marka Shuttlewortha, charizmatického milionára z Južnej Afriky, bývalého vývojára Debianu a svetovo druhého vesmírneho turistu. Ubuntu je financované jeho vlastnou spoločnosťou Canonical Ltd., ktorá sídli na ostrove Man (súčasť Veľkej Británie). Okolo Ubuntu sa vytvorila kvalitná internetová infraštruktúra s Wiki dokumentáciou, inteligentným systémom nahlasovania chýb, a taktiež profesionálnym prístupom k bežným používateľom. Zároveň vznikla možnosť zaslania CD s Ubuntu záujemcom pomocou vlastného programu Ship-it, financovaného zakladateľom projektu. Rozposielanie rapídne pomohlo pri jeho rozširovaní. Ubuntu je založené na Debian "SID" (Still In Development), nestabilnej vetve Debianu, pravidelne aktualizovanej na najnovšiu verziu. Ubuntu má stanovený 6 mesačný cyklus vydávania nových verzii, s občasným vydaním verzie s predĺženou podporou (Long Time Support, z toho skratka LTS), ktorá je podporovaná 3 roky pre použitie na pracovných staniciach a 5 rokov pre sieťové servery. Edície bez LTS označenia sú podporované po dobu 18 mesiacov pre pracovné stanice aj servery. Ubuntu je možné nainštalovať z live CD alebo pomocou inštalátora WUBI priamo z prostredia Windows. Obsahuje migračného asistenta pre prenesenie nastavení z Microsoft Windows, podporu najnovších technológii (napríklad 3D efekty), podporuje jednoduchú inštaláciu neslobodných ovládačov pre grafické karty ATI a NVIDIA. Na požiadanie je tiež podpora neslobodných alebo patentmi chránených multimediálnych kodekov. Klady: pevne určený vývojový cyklus vhodné pre začiatočníkov podrobná dokumentácia používateľská podpora Zápory:

12 Základy Linuxu -12- niektoré vlastné programy (napríklad Rosetta) sú neslobodné SUSE Začiatky projektu opensuse sa datujú do roku 1992, keď Roland Dyroff, Thomas Fehr, Hubert Mantel a Burchard Steinbild začali s projektom pod menom S.u.S.E. Linux (z nemčiny: Software und System Entwicklung). Preto sa názov číta foneticky [suse]. V prvých dňoch predali niekoľko diskiet s nemeckou verziou Slackware Linuxu, onedlho sa S.u.S.E. Linux stal vlastnou samostatnou distribúciou. Prvá verzia, označená 4.2, vyšla v máji V nasledujúcich rokoch vývojári začali používať RPM formát balíčkov, a uviedli YAST - jednoducho použiteľný grafický systém na nastavovanie, teda vlastné ovládacie centrum. Časté vydávanie, kvalitná tlačená dokumentácia a prístupnosť S.u.S.E. Linuxu v celej Európe a Severnej Amerike mali za následok zvyšujúcu sa popularitu tejto distribúcie. Neskôr sa názov skrátil na SuSE. Teraz sa spoločnosť volá SUSE Linux. SUSE Linux odkúpila spoločnosť Novell v druhej polovici roku Krátko nato nastali veľké zmeny vo vývoji, licenciách a dostupnosti SUSE Linuxu. YAST bol vydaný pod licenciou GPL a ISO obrazy bolo možno slobodne šíriť. Najväčšia zmena bola v uvoľnení distribúcie pre všetkých, po prvýkrát v histórii projektu. Už verzia SUSE Linuxu 10.0, ktorá vyšla v októbri 2005, prešla verejným beta testovaním, a tým predznamenala otvorenie vývoja smerom ku komunite. Potom vďaka projektu opensuse sa distribúcia stala kompletne zadarmo. Kód opensuse sa stal základom pre komerčné produkty spoločnosti Novell, a to najskôr pod menom Novell Linux, a neskôr pod menom SUSE Linux Enterprise Desktop (SLED) a SUSE Linux Enterprise Server (SLES). Hlavným dôvodom úspechu opensuse je použitie populárnych grafických rozhraní (KDE a GNOME), intuitívne ovládacie centrum YAST, a pre zákazníkov platiacich za krabicovú verziu tiež kvalitná tlačená dokumentácia a telefonická podpora. V roku 2006 bola podpísaná dohoda medzi spoločnosťami Novell a Microsoft, ktorá zdanlivo pripúšťa argumenty Microsoftu, že Linux porušuje jej patentové práva. To bol dôvod pre množstvo používateľov a vývojárov Linuxu na okamžitú zmenu distribúcie. Aj keď Novell uviedol veci okolo patentov na pravú mieru a Microsoft nepodniká žiadne výrazné právne kroky, táto téma sa stáva tŕňom v oku pre linuxovú komunitu. Klady: ľahko pochopiteľné ovládacie centrum veľa softvérových balíkov v repozitároch prehľadná štruktúra webu a tlačenej dokumentácie Zápory: zmluva Novellu a Microsoftu z novembra 2006, týkajúca sa patentov, zdanlivo legitimuje tvrdenia Microsoftu na intelektuálne vlastníctvo v Linuxe

13 Základy Linuxu -13- na hardvérové zdroje náročné nastavenie pracovného prostredia a grafické nástroje majú za výsledok, že je systém niekedy považovaný za ťažkopádny a pomalý Knopix Prvá verejná verzia KNOPPIXu bola vytvorená začiatkom roku 2003 a získala v rámci Linuxovej komunity veľmi pozitívny ohlas. Bol to prvý Linux, ktorý sa načítaval z live CD a nepotreboval žiadnu manuálnu konfiguráciu. Cieľom KNOPPIXu bolo vytvoriť systém, ktorý po vložení do CD mechaniky a pár minútach čakania vytvorí kompletný a plnohodnotný grafický Linuxový systém s veľkým množstvom aplikácií a bez potreby inštalácie na pevný disk. Aj keď KNOPPIX nebol prvý Linux na live CD, jeho zakladateľ, Klaus Knopper, zašiel ďalej ako ktokoľvek pred ním v skriptovaní a hardvérovej autodetekcii a autokonfigurácii. Na Debiane založený KNOPPIX sa stal úspešným, keď ho množstvo používateľov Linuxu začalo používať ako prenosný nástroj na najrôznejšie použitie. Môže sa použiť na zachraňovanie dát z pevných diskov, na demonštrovanie vlastností Linuxu pre nováčikov, na testovanie hardvérovej kompatibility hardvéru s Linuxom na notebookoch a bežných počítačoch, alebo na načítanie v internetových kaviarňach ako plnohodnotný Linuxový systém na každý deň. KNOPPIX sa stal populárnym nástrojom za veľmi krátky čas. Zanedlho vznikali rôzne distribúcie využívajúce hardvérovú detekciu, o ktorú sa postaral Klaus Knopper. Vznikli tak veľmi podobné projekty, a tiež špecializované live CD distribúcie na rôzne účely. KNOPPIX sa považuje za používateľsky prijateľný, keďže väčšina potrebných vecí sa nastaví automaticky. Technicky zdatnejší používatelia využívajú pokrokovejšie funkcie. Nové verzie, prístupné na DVD, prinášajú množstvo rôzneho softvéru, vrátane všetkých populárnych grafických rozhraní a nástrojov pre servery, prebratých z archívov Debianových vetiev Unstable a Testing. Toto zväčšenie počtu aplikácii však prinieslo problémy - KNOPPIX sa stal pomalým (hlavne DVD verzia), chybovým (Klaus Knopper neuznáva verejné beta testovanie) a neusporiadaným (usporiadanie menu je iné v každom rozhraní). Nemá žiadne plánovanie do budúcnosti, ale nové verzie sú vydávané väčšinou dvakrát do roka, špeciálne krátko po hlavných linuxových exhibíciách v Nemecku, kde sú nové verzie KNOPPIXU uvádzané skôr ako inde na svete. Táto distribúcia stráca pôvodnú popularitu, keďže dnes už takmer každá distribúcia má svoje vlastné live CD, alebo Live DVD. Klady: výborne zvládnutá autodetekcia hardvéru a autokonfigurácia prenosný systém vhodný na zachraňovanie dát, demonštrácie a testovanie schopnosť nainštalovať na pevný disk Zápory: nové verzie sú dosť chybové neporiadok v jednotlivých grafických rozhraniach

14 Základy Linuxu -14- pomalosť pri načítavaní z DVD Debian Debian GNU/Linux vznikol v roku Jeho zakladateľ, Ian Murdock, počítal s vytvorením kompletne nekomerčného projektu, ktorý by vyvíjali stovky dobrovoľných vývojárov vo svojom voľnom čase. Počet skeptikov v tom čase ďaleko prekračoval počet optimistov, predpokladal sa rozklad a kolaps celého systému. Debian však prežil a prosperoval, a o menej ako desať rokov sa stal najväčšou Linuxovou distribúciou a pravdepodobne aj najväčším spoločným softvérom, aký bol kedy vytvorený. Úspech Debian GNU/Linux ukazujú nasledovné čísla: Je vyvíjaný viac ako 1000 dobrovoľnými vývojármi, softvérové repozitáre (zdroje softvéru) majú viac ako balíčkov (kompilovaných pre 11 odlišných počítačových architektúr) a zakladá sa na ňom viac ako 120 distribúcií a live CD. Tieto čísla sa nedajú porovnať so žiadnym iným operačným systémom založeným na Linuxe. Aktuálny vývoj Debianu má 3 hlavné vetvy (so započítaním experimentálnej vetvy 4), zoradené podľa stupňa stability. "Unstable" (známe tiež ako "Sid"), "Testing" a "Stable". Táto progresívna integrácia a stabilizácia balíčkov a vlastností, spolu s dobre pripraveným systémom nahlasovania chýb, získala Debianu výbornú reputáciu. Dnes je Debian známy ako takmer bezchybná a otestovaná distribúcia. Samozrejme, taký dlhý a komplexný vývoj má aj odvrátené stránky: Stabilná vetva vývoja Debianu nie je pravidelne aktualizovaná a veľmi rýchlo zastaráva, najmä ak býva uvoľňovaná každých 12 až 36 mesiacov. Používatelia, ktorí preferujú najnovšie balíčky a technológie, sú nútení používať viac chybové vetvy Testing a Unstable. Ľudová štruktúra Debianu má veľmi sporný vplyv na ďalší vývoj, pričom dochádza až k tichej vojne medzi vývojármi. To vedie ku stagnácii a odporu proti robeniu ráznych rozhodnutí, ktoré môžu posunúť projekt ďalej dopredu. Klady: vysoká stabilita kontrola chýb cez softvérových balíčkov podpora najväčšieho počtu architektúr v rámci systémov založených na Linuxe Zápory: konzervatívny - kvôli podpore veľkého množstva počítačových architektúr nie sú vždy zahrnuté najnovšie technológie pomalý cyklus vydávania nových verzií (stabilné vydanie každých mesiacov)

15 Základy Linuxu CentOS Čo to vlastne znamená, keď hovoríme o CentOS Linux? V súčasnosti existujú na svete stovky rôznych distribúcií Linuxu. Samotný Linux ako taký je totiž len operačný systém. Takže keď hovoríme o Linuxe, hovoríme vlastne iba o jadre. Jadro samo o sebe asi pre veľkú väčšinu používateľov bude asi neužitočné. Preto sa k jadru pridávajú rôzne programové balíky (napr. kompilátor gcc). Jadru a pridanej skupine balíkov spolu s inštalátorom (príp. iba s návodom) sa hovorí distribúcia. Jednou z takýchto distribúcií je aj CentOS Linux. Spolu s touto distribúciou je dostupná aj technická podpora (platená) a inštalačný a konfiguračný softvér. Bližšie informácie a zdroje pre stiahnutie nájdete na

16 Základy Linuxu Práca s príkazovým riadkom 2.1. Príkazový interpretátor (shell) Príkazový riadok je prezentovaný špeciálnym programom, ktorý sa nazýva príkazový interpretátor [shell]. Príkazový interpretátor prijíma príkazy a realizuje ich. Príkazové interpretátory zväčša obsahujú sadu príkazov, pomocou ktorých sa dajú písať rôzne programy, nazývané skripty [shell scripts]. Pre operačné systémy typu LINUX existujú dva základné typy príkazových interpretátorov: Bourne Shell (bash) a C Shell. Zdroj: V rôznych distribúciách operačného systému Linux, je na výber päť príkazových interpreterov ash, bash, tcsh, zsh, pdksh. Dostupné shelly a cesty k ním sú uvedené v /etc/shells. Každý používateľ môže používať iného príkazového interpretátora. Používateľovi sa priraďuje pomocou súboru /etc/passwd: root@vm3:/var/log# cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync

17 Základy Linuxu -17- games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh Ako možno vidieť, posledný záznam v riadku je príkazový interpretátor (shell). Vo vyznačených prípadoch ide o bash, sh a sync. Najrozšírenejším príkazovým interpretátorom (shell) je Bourne Shell (bash) je GNU produkt, "Bourne Again Shell." Je to štandardné rozhranie príkazového riadku na väčšine počítačov s Linuxom. Vyniká svojou interaktivitou, podporou editácie príkazového riadku, dokončenia, a odvolania. Označenie používateľa v príkazovom interpréterovi: # - root $ - obyčajný používateľ 2.2. Príkazy Spúšťanie príkazov Z názvu príkazový riadok je jasné, že systém očakáva od používateľa príkaz. Príkaz je postupnosť znakov a čísel, nepatrí do nej medzera. Príkazy v operačnom systéme Linux rozlišujú veľké a malé písmená, a preto systém nepokladá príkazy man a Man za totožné. Syntax je nasledovná: príkaz [prepínač1] {premenná 1}... [prepínač n] {premenná n} [argument 1]... [argument n] Každá položka je oddelená medzerou. Prepínače modifikujú chovanie príkazu. Slovné prepínače sú obvykle označené znakmi --, jednopísmenové prepínače sú obvykle označené -. Môžu byť zapísané ako -a -b -c, alebo ako -abc. ls a l /etc ls l a /etc

18 Základy Linuxu -18- ls al /etc ls la /etc Tieto príkazy dajú ten istý výsledok. Vypíšu celý zoznam adresára /etc vo forme dlhého zoznamu spolu so skrytými súbormi. Parametre prepínača špecifikujú bližšie daný prepínač. Napr. pri príkaze cut, ktorý slúži na zobrazenie určitého stĺpca máme prepínač f, pomocou ktorého si zvolíme, ktoré stĺpce zobraziť: cut -d ":" -f "1 3" /etc/passwd Vyššie uvedený príkaz zobrazí 1. a 3. stĺpec súboru /etc/passwd. Prepínač d slúži na určenie znaku, ktorý sa používa na oddelenie jednotlivých stĺpcov. V prípade súboru /etc/passwd to je dvojbodka :. Ak chceme uviesť text ako parameter, musíme ho dať do úvodzoviek: Toto je text Argumenty príkazu sú obvykle názvy súborov alebo iné dáta požadované príkazom. head n 4 /etc/passwd Príkaz head má jednopísmenkový prepínač -n s premennou 4. Argumentom je názov súboru /etc/passwd. Tento príkaz zobrazí len prvé 4 riadky súboru /etc/passwd Dokončenie príkazov Bash shell obsahuje vlastnosť nazývanú dokončovanie príkazu. Tá umožňuje zadať niekoľko prvých písmen príkazu na príkazovom riadku. Stlačte klávesu Tab a systém dokončí príkaz. $ pi <stlačte tab klávesu> $ ping Ak existuje viac ako jeden možný zápis, systém jednoducho zapípa. Opätovným stlačením klávesy Tab sa zobrazia všetky možné príkazy. Stlačením Esc dvakrát vykonáte rovnakú akciu ako stlačením klávesy Tab.

19 Základy Linuxu Rekurzívne príkazy Rekurzia, pokiaľ ide o Linux príkazy, znamená použitie príkazu na všetky súbory v adresári a všetky súbory vo všetkých podadresároch (a podadresároch podadresárov). Niektoré príkazy (ls, chown, chmod, cp, rm, grep) podporujú prepínače R alebo r.v príkazoch bez rekurzívneho módu, môžete použiť find na dosiahnutie toho istého výsledku ako je vyššie uvedené Pomoc a manuálové stránky Neskúšajte sa naučiť všetky príkazy naspamäť. V systéme Linux existuje veľa pomocných textov na rôznych úrovniach rozsahu. Sú to napr.: whatis, man, info whatis Zobrazí krátky popis príkazu. Používa vlastnú databázu, ktorá je aktualizovaná v noci. Inicializácia databázy sa dá urobiť ručne, príkazom /usr/bin/makewhatis. Často ale nie je dostupná ihneď po nainštalovaní systému. Príklad použitia: $ whatis cal cal (1) - displays a calendar [príkaz] help Zobrazí súhrnné informácie o použití a zoznam argumentov. Táto voľba je používaná v prevažnom množstve príkazov, ale nie vo všetkých. Príklad použitia: $ date help Usage: date [OPTION]... [+FORMAT] or: date [-u --utc --universal] [MMDDhhmm[[CC]YY][.ss]] Display the current time in the given FORMAT, or set the system date.

20 Základy Linuxu man V prostredí operačného systému LINUX a Linux existuje program man, ktorý slúži ako pomocník k jednotlivým programom a príkazom operačného systému. Zadaním príkazu man sa zobrazia manuálové stránky, ktoré sú vo väčšine distribúcií operačných systémov v anglickom jazyku. V súčasnosti však prebiehajú práce na ich preložení. Využitím týchto manuálových stránok sa o jednotlivých príkazoch a programoch môžete dozvedieť viac podrobností, ktoré vám napomôžu k ich efektívnejšiemu využitiu. Zobrazenie manuálových stránok pre príkaz cat: man cat localhost:/home/user\# man cat CAT(1) FSF CAT(1) NAME cat - concatenate files and print on the standard output SYNOPSIS cat [OPTION] [FILE]... DESCRIPTION Concatenate FILE(s), or standard input, to standard output. -A, --show-all equivalent to -vet -b, --number-nonblank number nonblank output lines -e equivalent to -ve -E, --show-ends display $ at end of each line Toto je len časť výpisu, ktorý obsahuje manuálová stránka programu cat. Po vypísaní textu na obrazovku program man čaká, čo budete robiť ďalej. Ak má text viac riadkov, v poslednom riadku obrazovky je napísané: Manual page cat(1) line 1/75 29% čo znamená, že ste na prvom riadku zo 75. Niekedy býva informácia o ďalších stranách manuálovej stránky zobrazená takto:

21 Základy Linuxu more--- alebo "Line 1" V oboch prípadoch ide o informáciu, že stránka obsahuje viac textu ako je zobrazené. Pohyby v texte sú možné pomocou kurzorových šípok, prípadne tlačidlami PGUP a PGDOWN. Pokiaľ hľadáte konkrétny reťazec, použite klávesu /. Ďalší/predošlý výskyt reťazca nájdete pomocou kláves n/n. Program man opustíte stlačením tlačidla q. Manuálové stránky majú: Záhlavie s názvom príkazu Názov príkazu a všetky súvisiace príkazy, ktoré sú popísané na rovnakej manuálovej stránke Synopsia možností a parametrov vzťahujúcich sa na príkaz Stručný popis príkazu Podrobné informácie o každej z možností V manuálových stránkach môžu byť aj ďalšie časti, ako kam hlásiť chyby, autor informácie, a zoznam súvisiacich príkazov. Napríklad manuálové stránky pre man hovoria, že súvisiace príkazy (a ich ručné oddiely) sú: apropos(1), whatis(1), less(1), groff(1), and man.conf(5) info Príkaz info je podobný príkazu man, ale ide viac do hĺbky. Keď chcete zobraziť zoznam všetkých dostupných stránok, použite príkaz info bez argumentov. Stránky programu info sú štruktúrované podobne ako web stránky, každá stránka má tzv. nody, ktoré sú označené znakom *. Pohybovať v dokumente sa môžete opäť pomocou kurzorových kláves, PGUP a PGDOWN. Tabulátor vás presunie na nasledujúci odkaz (node), klávesou ENTER otvoríte odkaz, na ktorom je práve kurzor. Klávesy n/p/u (next/previous/up-one) vám umožnia pozrieť nasledujúci/predošlý/vrchný odkaz, klávesa s vám umožní prehľadávať dokument. Program info opustíte stlačením tlačidla q Základné príkazy startx spustenie grafického rozhrania clear vyčistenie obrazovky šípka hore vypísanie starších príkazov šípka dole vypísanie novších príkazov history vypísanie všetkých doteraz použitých príkazov soki@vm3:~$ history 1 sudo su

22 Základy Linuxu sudo su 3 sudo su 4 sudo su 5 sudo su 6 htop 7 htop date zobrazí dátum a čas soki@vm3:~$ date Sun Aug 25 03:06:19 MSK 2013 cal zobrazí kalendár soki@vm3:~$ cal August 2013 Su Mo Tu We Th Fr Sa last poslední prihlásení používatelia soki@vm3:~$ last soki pts/1 bip-static Sun Aug 25 00:42 still logged in soki pts/0 bip-static Fri Aug 23 20:53-01:59 (1+05:05) soki pts/ Sun Aug 18 20:06-10:56 (14:50) soki pts/ Sat Aug 17 02:58-00:10 (21:11) soki pts/ Fri Aug 16 12:47-17:59 (05:11) soki pts/ Fri Aug 16 01:27-10:38 (09:11) soki pts/ Thu Aug 15 03:27-06:39 (03:11) soki pts/ Thu Aug 15 02:28-06:39 (04:11) stevo pts/ Tue Aug 13 16:42-16:42 (00:00) 2.5. Midnight commander (MC)

23 Základy Linuxu -23- Inštalácia: Debian, Ubuntu: apt-get install mc CentOS: yum install mc Klávesová skratka Význam F1 F2 F3 F4 F5 Pomoc užívateľské menu prezeranie súboru editovanie súboru pomocou externého editora (najčastejšie mcedit alebo nano) kopírovanie

24 Základy Linuxu -24- F6 F7 F8 F9 F10 Tab CTRL+s CTRL+o premenovanie/presunutie vytvorenie adresára zmazanie sprístupní panel ponúk v hornej časti obrazovky vypnutie mc prepínanie medzi oknami zapnutie vyhľadávania skrytie mc 2.6. SSH a Putty SSH (secure shell): zabezpečený prístup k príkazovému interpretéru (shellu) počítačový program ako aj súvisiaci sieťový protokol určený na prihlasovanie a vykonávanie príkazov na vzdialenom počítači v počítačovej sieti. SSH server štandardne počúva na TCP porte 22. Ide o bezpečnostný prvok vzdialenej správy linuxového servera Pred použitím protokolu SSH sa používal na vzdialené prihlasovanie protokol TELNET. Tento sa dnes považuje za bezpečnostnú hrozbu, keďže posiela nešifrované správy, ktoré možno po ceste odchytiť. Pri prvom prihlásení na vzdialený linuxový server, na ktorom beží SSH, je potrebné akceptovať odtlačok (fingerprint) verejného kľúča vzdialeného servera. Inštalácia programu SSH:

25 Základy Linuxu -25- yum search openssh yum install openssh Spustenie služby SSH: service sshd start Editácia ssh konfigurácie: nano /etc/ssh/sshd_config Prihlasovanie sa na ssh server: ssh p {port} user@hostname Príklad: Chceme sa prihlásiť vzdialene na užívateľa test na ssh server s IP adresou , ktorý počúva na porte 555 ssh p 555 test@ Putty - Je to open-source implementácia Telnet a SSH klienta pre Win a UNIX platformy Manuál: Download:

26 Základy Linuxu Toky, rúry, presmerovania Zoznam: tee - odošle výstup na štandardný výstup a do súboru xargs - rozšíri vstup argumentov príkazového riadku < - presmerovanie štandardného vstupu zo súboru << - presmerovanie štandardného vstupu z textu v skripte > - poslanie štandardného výstupu do súboru >> - pripojenie štandardného výstupu do súboru - prepojenie štandardného výstupu príkazu na štandardný vstup iného príkazu ` ` - zachytenie výstupu príkazu a jeho použitie v skripte Presmerovanie Efekt presmerovania príkaz1 príkaz2 výstup príkazu 1 je vstup príkazu 2

27 Základy Linuxu -27- príkaz < súbor príkaz > súbor príkaz 2> súbor príkaz >> súbor príkaz číta vstup zo súboru výstup príkazu ide do súboru chyba príkazu ide do súboru výstup z príkazu je pridaný do súboru príkaz > súbor 2>&1 výstup a chyby idú do súboru príkaz >& súbor príkaz &> súbor Presmerovanie vstupu a výstupu So súbormi veľmi tesne súvisí presmerovanie vstupu a výstupu. Niekedy budeme potrebovať presmerovať výstup niektorého programu alebo príkazu namiesto na obrazovku do určitého súboru. Na to využijeme operátor presmerovania výstupu. Je to znak >. Presmerovanie výstupu príkazu ls do súboru napr. s menom /home/soki/vypis_ls.txt takto: [root@asterix root]# ls la > /home/soki/vypis_ls.txt Výstup príkazu, čo je v tomto prípade obsah aktuálneho adresára, sa nezobrazil na obrazovke, ale sa uložil do súboru vypis_ls.txt na disk. Potom som len jednoducho vzal súbor vypis_ls.txt a nakopíroval do tohto textu. V prípade, že súbor vypis_ls.txt predtým neexistoval, bude automaticky vytvorený. V prípade, že existoval, bude pôvodný obsah zmazaný a nahradený novým obsahom.

28 Základy Linuxu -28- Niekedy sa stáva, že sa nejaký príkaz spúšťa opakovane a jeho výsledok si chceme ukladať do súboru tak, aby sa pôvodný obsah nevymazal, ale aby sa nový obsah pripojil na koniec pôvodného obsahu. Vtedy stačí použiť operátor doplňovania >>. Opakované spúšťanie príkazu: [root@asterix root]# ls la >> /home/soki/vypis_ls.txt zabezpečí uloženie všetkých výsledkov daného príkazu do jedného súboru. Na tomto princípe sú v Linuxe založené logovacie súbory. Predstavme si, že často vykonávame určitú činnosť, kde sme nútení zadávať určité hodnoty z klávesnice. Aby sme ich nemuseli stále ťukať, stačí, ak tieto hodnoty uložíme do určitého súboru a ten použijeme ako vstup pre daný program. Presmerovanie vstupu programu zabezpečíme operátorom <. [root@asterix root]# ls la < /home/soki/vypis_ls.txt Štandardné presmerovanie chýb Štandardne, linuxové procesy produkujú 2 chybné toky. Regulárne toky sú presmerované na stdout (standard output 1 ), teda štandardne na príkazový riadok a chyby sú posielané na stderr (standard error 2 ). Výstup poslaný na stderr: Chybové hlášky (error hlášky) (príkaz 2>/dev/null) Upozorňujúce hlášky (warning hlášky) (príkaz 2>> warning.log) Indikátory ladenia (debugovania) a indikátorov (príkaz 2>&1 less ) 1) Ak stderr nie je presmerovaný, error výstup sa zobrazí na termináli. [student server]$ ifconfig -bash: ifconfig: command not found 2) (príkaz 2>/dev/null) posiela chyby do súboru. Je úplne bežné posielať ich do /dev/null

29 Základy Linuxu -29- [student server]$ ifconfig 2> /dev/null [student server]$ ifconfig 2> warning.log 3) Pripojí chyby do existujúceho súboru. [student server]$ ifconfig -bash: ifconfig: command not found [student server]$ ifconfig 2>>warning.log [student server]$ cat warning.log -bash: ifconfig: command not found -bash: ifconfig: command not found Rúra (pipe) Rúra (angl. pipe) slúži na kombináciu príkazov a ich rozširovanie. Takto môžeme zreťaziť niekoľko príkazov za sebou, pričom každý z nich bude považovať svoj vstup napojený na výstup toho predchádzajúceho. Operátorom rúry je. Príkaz: [root@asterix root]# ls la /etc grep host root@vm3:/home/soki# ls -la /etc/ grep host -rw-r--r-- 1 root root 9 Aug host.conf -rw-r--r-- 1 root root 4 Aug 10 19:14 hostname -rw-r--r-- 1 root root 258 Aug 10 19:14 hosts -rw-r--r-- 1 root root 594 Aug hosts.allow -rw-r--r-- 1 root root 880 Aug hosts.deny spôsobí výpis obsahu príslušného adresára, ale tento výpis nebude na obrazovke ani presmerovaný do súboru na disk, ale priamo pretečie rúrou ako vstup príkazu grep. Ten v tomto výpise vyhľadá reťazec s menom host, a ak ho nájde, zobrazí riadok, kde sa ten vyskytuje. Vidíme, že je to meno súboru, je taký a taký veľký a jeho vlastníkom je ten a ten Zástupné znaky (wildcards)

30 Základy Linuxu -30- Zástupné znaky (wildcards) sú špeciálne znaky a reťazce, ktoré môžete vziať miesto akýchkoľvek znakov, alebo špecifických znakov. shell rozširuje nasledujúce špeciálne znaky len v prípade, že sú súčasťou názvu súboru. Rozšírenie mena súboru sa vykonáva iba v prípade, že špeciálne znaky sú v úvodzovkách ~ /home/user or /root (domovský adresár používateľa) napr. echo ~/.bashrc * Akákoľvek sekvencia znakov (alebo žiadne znaky) napr. echo /etc/*ost*? Akýkoľvek 1 znak napr. echo /etc/hos? [abc] čokoľvek z množiny (a, b, c) napr. echo /etc/host[s.] {abc,def,ghi} čokoľvek z množiny (abc, def, ghi) napr. echo /etc/hosts.{allow,deny} Príklady: student:/etc $ ls -l host* -rw-r--r-- 1 root root 17 Jul host.conf -rw-rw-r-- 2 root root 291 Mar 31 15:03 hosts -rw-r--r-- 1 root root 201 Feb 13 21:05 hosts.allow -rw-rw-r-- 1 root root 196 Dec 9 15:06 hosts.bak -rw-r--r-- 1 root root 357 Jan 23 19:39 hosts.deny student:/etc $ ls [A-Z]* -lad drwxr-xr-x 3 root root 4096 Oct 14 11:07 CORBA -rw-r--r-- 1 root root 2434 Sep DIR_COLORS -rw-r--r-- 1 root root 2434 Sep DIR_COLORS.xterm -rw-r--r-- 1 root root Jun Muttrc drwxr-xr-x 18 root root 4096 Feb 24 19:54 X11

31 Základy Linuxu -31-

32 Základy Linuxu Správa užívateľov 3.1. Typy užívateľov Administrátor Označuje sa ako superadministrátor, root je užívateľské meno alebo účet, ktorý v predvolenom nastavení má prístup ku všetkým príkazom a súborom na Linuxe. jeho UID je 0 dokonca vie odstrániť koreňový adresár / Užívatelia (users): každý iný užívateľ ich UID je rôzne od 0 obmedzené oprávnenia nutnosť používať sudo 3.2. Základné súbory užívateľov /etc/passwd V súbore /etc/passwd je uložená databáza užívateľov. Príklad súboru /etc/passwd: root:x:0:0::/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/log: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync

33 Základy Linuxu -33- shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/: news:x:9:13:news:/usr/lib/news: uucp:x:10:14:uucp:/var/spool/uucppublic: operator:x:11:0:operator:/root:/bin/bash games:x:12:100:games:/usr/games: ftp:x:14:50::/home/ftp: mysql:x:27:27:mysql:/var/lib/mysql:/bin/bash gdm:x:42:42:gdm:/var/state/gdm:/bin/bash nobody:x:99:99:nobody:/: janko:x:1000:100:janko Hrasko,,,:/home/janko:/bin/bash Jednotlivé záznamy (stĺpce) sú oddelené dvojbodkou. Záznam (stĺpec) Obsah 1. Názov užívateľa 2. Heslo užívateľa x znamená, že heslo je uložené v /etc/shadow 3. Identifikácia užívateľa 4. Identifikácia skupiny 5. Informácie o užívateľovi 6. Domovský adresár 7. Shell /etc/shadow V súbore /etc/shadow sú uložené heslá užívateľov. Príklad súboru /etc/shadow: root:nhc.yp4s8lf1y:11783:0::::: bin:*:9797:0::::: daemon:*:9797:0::::: adm:*:9797:0::::: lp:*:9797:0::::: sync:*:9797:0::::: shutdown:*:9797:0::::: halt:*:9797:0::::: mail:*:9797:0::::: news:*:9797:0:::::

34 Základy Linuxu -34- uucp:*:9797:0::::: operator:*:9797:0::::: games:*:9797:0::::: ftp:*:9797:0::::: mysql:*:9797:0::::: gdm:*:9797:0::::: nobody:*:9797:0::::: janko:in9.jjl2xgsxq:11783:0:99999:7::: Jednotlivé záznamy (stĺpce) sú oddelené dvojbodkou. Záznam (stĺpec) Obsah 1. Názov užívateľa 2. Heslo v zašifrovanej podobe 3. Posledná zmena hesla počítaných od Minimálny počet dní vyžadovaných pri zmenách hesla 5. Maximálny počet dní, kedy je heslo platné 6. Počet dní do exspirácie hesla 7. Počet dní po exspirácii hesla 8. Počet dní expirácie hesla počítaných od /etc/groups V súbore /etc/groups je uložená databáza skupín. Príklad súboru /etc/groups: root::0:root bin::1:root,bin,daemon daemon::2:root,bin,daemon sys::3:root,bin,adm adm::4:root,adm,daemon tty::5: disk::6:root,adm lp::7:lp mem::8: kmem::9:

35 Základy Linuxu -35- wheel::10:root floppy::11:root,jerry mail::12:mail news::13:news uucp::14:uucp,jerry man::15: games::20: slocate:x:21: mysql::27: gdm::42: ftp::50: nobody::98:nobody Jednotlivé záznamy (stĺpce) sú oddelené dvojbodkou. Záznam (stĺpec) Obsah 1. Názov skupiny 2. Heslo skupiny (štandardne nie je nastavené) 3. Identifikačné číslo skupiny 4. Zoznam užívateľov v danej skupine 3.3. Príkazy na prácu s užívateľmi adduser Pomocou príkazu adduser pridávame používateľa. Syntax: adduser meno_užívateľa Príklad: adduser test root@vm3:/# adduser test Adding user `test'...

36 Základy Linuxu -36- Adding new group `test' (1004)... Adding new user `test' (1004) with group `test'... Creating home directory `/home/test'... Copying files from `/etc/skel'... Enter new UNIX password: Retype new UNIX password: Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y useradd Pomocou príkazu useradd pridávame používateľa. Rozdiel medzi adduser a useradd je: adduser vytvára aj heslo pre používateľa, adduser pri pridávaní užívateľa umožňuje vyplniť údaje adduser ako shell pridáva bash useradd dáva ako shell sh Syntax: useradd meno_užívateľa deluser Pomocou príkazu deluser zmažeme používateľa. Syntax: deluser meno_užívateľa Príklad: deluser test

37 Základy Linuxu -37- deluser test Removing user `test'... Warning: group `test' has no more members. Done userdel Pomocou príkazu deluser zmažeme používateľa a všetky relevantné súbory. Syntax: deluser meno_užívateľa usermod Na zmenu údajov po užívateľovi používame príkaz usermod. Syntax: usermod [prepínače] meno_užívateľa Prepínače: -c zmena komentára root@vm3:/home/soki# cat /etc/passwd grep test test:x:1004:1004::/home/test:/bin/bash root@vm3:/home/soki# usermod -c "Moje konto" test root@vm3:/home/soki# cat /etc/passwd grep test test:x:1004:1004:moje konto:/home/test:/bin/bash -g nastavenie skupiny pre užívateľa test:x:1004:1004:moje konto:/home/test:/bin/bash root@vm3:/home/soki# usermod -g www-data test root@vm3:/home/soki# cat /etc/passwd grep test test:x:1004:33:moje konto:/home/test:/bin/bash -l zmena loginu užívateľa root@vm3:/home/soki# cat /etc/passwd grep test test:x:1004:33:moje konto:/home/test:/bin/bash root@vm3:/home/soki# usermod -l novy_login test root@vm3:/home/soki# cat /etc/passwd grep test

38 Základy Linuxu -38- novy_login:x:1004:33:moje konto:/home/test:/bin/bash -s zmena shellu cat /etc/passwd grep test test:x:1004:33:moje konto:/home/test:/bin/bash usermod -s bin/false test cat /etc/passwd grep test test:x:1004:33:moje konto:/home/test:bin/false -d zmena domovského adresára cat /etc/passwd grep test test:x:1004:33:moje konto:/home/test:/bin/bash usermod d /home/pes test root@vm3:/home/soki# cat /etc/passwd grep test test:x:1004:33:moje konto:/home/pes:bin/bash passwd Pomocou príkazu passwd zmeníme heslo užívateľovi. Syntax: passwd [prepínače] meno_užívateľa Príklad: Chceme zmeniť heslo užívateľovi test passwd test root@vm3:/# passwd test Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Prepínače: -d zmaže heslo root@vm3:/home/soki# passwd -d test passwd: password expiry information changed.

39 Základy Linuxu S status hesla passwd -S test test P 08/24/ Nástroje sudo a su sudo Príkaz sudo umožňuje oprávnenému užívateľovi vykonať príkaz ako superužívateľ alebo ako iný užívateľ, ako to je špecifikované v sudoers súbore, bez toho, aby musel zmeniť identitu. Niekedy nie je potrebné zadávať heslo, ale vo väčšine prípadov áno. Syntax: sudo príkaz Príklad: Chceme spustiť ifconfig (príkaz na zistenie stavu sieťových rozhraní) z užívateľa bez toho, aby sme sa museli prepnúť do superužívateľa. sudo ifconfig soki@vm3:~$ ifconfig bash: ifconfig: command not found soki@vm3:~$ sudo ifconfig [sudo] password for soki: lo Link encap:local Loopback inet addr: Mask: inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:4147 errors:0 dropped:0 overruns:0 frame:0 TX packets:4147 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes: (296.5 KiB) TX bytes: (296.5 KiB) Prepínače: -u prepínač pre zadefinovanie rozhraní su Príkaz su používame na zmenu užívateľa počas relácie. Niekedy nie je potrebné zadávať heslo, ale vo väčšine prípadov áno.

40 Základy Linuxu -40- Syntax: su [prepínače] meno_užívateľa Príklad: Chceme sa prepnúť na užívateľa test: su test su test Príklad: Chceme sa prepnúť na superpoužívateľa root: su Úlohy k správe užívateľov Úloha 1: Vytvorte užívateľa test Úloha 2: Vytvorte užívateľa test2 Úloha 3: Zmeňte domovský adresár užívateľovi test2 Úloha 4: Zmeňte informačný text užívateľovi test Úloha 5: Odstráňte užívateľa test2 Úloha 6: Zmeňte heslo užívateľovi test Úloha 7: Vykonajte príkaz mc ako root bez toho, aby ste zmenili identitu Úloha 8: Vytvorte ako používateľ test súbor /home/test/ahoj bez toho, aby ste zmenili identitu Úloha 9: Zmeňte identitu na užívateľa test 4. Súborový systém

41 Základy Linuxu Adresárová štruktúra /bin obsahuje najdôležitejšie binárne súbory operačného systému. V systéme sa nachádza viac adresárov s názvom bin. Je to kvôli prehľadnosti jednotlivé bin adresáre obsahujú spustiteľné súbory k rôznym typom programov. Adresár /bin obsahuje základné spustiteľné súbory, môžete tu nájsť napr. programy ls, cat, chown, chmod atď. /boot adresár boot obsahuje súbory používané pri bootovaní systému. Najdôležitejší (aj keď nie jediný nevyhnutný pre správne nabootovanie systému) je súbor vmlinuz, ktorý obsahuje jadro systému (kernel). Samotný kernel je srdcom celého systému; je to niečo ako hlavná časť Linuxu. Je nutný pre samotný beh systému, najmä správu pamäte, riadenie procesov; môže však už obsahovať aj ovládače pre zariadenia. Bez kernelu by žiaden program nemohol byť ani spustený. Okrem jadra je dôležité poznať programy grub a lilo. Tieto programy majú za úlohu pri bootovaní počítača nahrať do pamäte kernel. Hlavnou funkcionalitou sú si veľmi podobné; buď je použitý jeden, alebo druhý. V CentOS Linux sa štandardne používa grub. /dev device (zariadenie). Ako už z názvu vyplýva, adresár bude obsahovať zariadenia systému. Vec možno na prvý pohľad nezaujímavá má však pre Linux mimoriadny význam a je jeho dôležitou vlastnosťou. V Linuxe okrem už dobre známej reprezentácie dát (texty, obrázky, programy, knižnice, ) existujú ešte špeciálne druhy súborov. Práve jedným typom špeciálneho súboru je súbor, ktorý reprezentuje určité (napr. hardvérové) zariadenie. V adresári dev teda môžete nájsť súbory, ktoré reprezentujú napr. myš /dev/mouse, IDE harddisk /dev/hda, /dev/hdb, SCSI zariadenie /dev/sda, /dev/sdb, floppy disk /dev/fd0, streamer /dev/st0, zvukovú kartu /dev/dsp, atď Ak tam však niektorý z uvedených súborov nenájdete, neprepadajte panike môže byť prítomný pod iným názvom (napr. /dev/mouse môže byť len linka na sériové rozhranie atď.) Spomenutý systém súborov reprezentujúcich zariadenia systému umožňuje jednotnú prácu takmer so všetkým, čo sa v systéme nachádza. Programátor si stále vystačí s niekoľkými štandardnými príkazmi na otvorenie súboru, čítanie, zapisovanie, zatvorenie súboru a ešte určitými špeciálnymi nastaveniami. /etc povinný adresár s najdôležitejšími konfiguračnými súbormi k jednotlivým programom. Napríklad obsahuje súbor /etc/passwd čo je súbor o užívateľoch, súbor /etc/shadow čo je súbor o heslách užívateľov a súbor /etc/group čo je súbor o skupinách. /home adresár obsahuje domovské adresáre všetkých používateľov, až na používateľa root (ktorý má domovský adresár /root). /lib hlavné knižnice systému; obzvlášť dôležitý je adresár /lib/modules. Čím má mať operačný systém viac rôznych funkcií a podporovať viac hardvéru, tým musí obsahovať viac rôznych programov s danou funkcionalitou. Takýchto programov je ale obrovské množstvo od základnej sieťovej podpory až po špeciálny hardwér na veľmi špecifické použitie. Je zrejmé, že bežnému používateľovi budú ovládače na takýto typ hardvéru zbytočné. Aby nebolo jadro systému (vyššie spomínaný kernel) prepchaté možno práve zbytočnými programami, je možné ho nejakým spôsobom poskladať práve len z tých častí, ktoré sú pre nás potrebné. Práve tieto súčiastky, ktoré sa dajú podľa potreby obmieňať, sa nazývajú moduly (modules). Ako príklad modulu môžem uviesť ovládač na sieťovú kartu; takisto to však môže byť podpora určitého sieťového protokolu.

42 Základy Linuxu -42- /media pozri adresár /mnt. Adresár media je vytvorený na mountovanie prenosných médií (napr. cdrom, floppy). Veľa systémov má len adresár /mnt. Tu je to rozdelené len kvôli prehľadnosti. /mnt budeme najčastejšie používať v spolupráci so zariadeniami z adresára /dev. Na rozdiel od adresára /dev adresár /mnt neobsahuje žiadne špeciálne súbory. Čo sa týka špeciálnych zariadení adresára /dev z pohľadu používateľa, je dôležité poznať príkaz mount, ktorý primontuje určité zariadenie do našej adresárovej štruktúry. Obyčajne sa zariadenia mountujú práve do podadresára /mnt(alebo /media). Nie je to vôbec podmienka, skôr také nepísané pravidlo, ktoré sprehľadňuje systém. V adresári /mnt môžete mať vytvorené napr. podadresáre floppy a cdrom, do ktorých sa budú mountovať (zobrazovať, premietať) zariadenia predstavujúce cdrom a disketovú mechaniku. Primountovanie zariadenia do systému (naprojektovanie jeho obsahu do adresára) sa vykoná príkazom mount. /proc ďalší špeciálny adresár (resp. adresár ani nie je špeciálny; skôr je špeciálny jeho obsah). Obsah tohto adresára sa nenachádza na disku ani na inom podobnom médiu, ale je to len určitý obraz pamäte, inými slovami ide o virtuálny súborový systém. Ako bolo spomenuté pri adresári/mnt a mountovaní, do adresára je možné namountovať takmer hocičo, len je potrebný program, ktorý to zobrazí vo forme súborov. Obsah adresára /proc je generovaný kernelom a obsahuje rôzne údaje o práve bežiacom systéme. Je to robené v reálnom čase (t.j. nie len napr. pri boote systému). Pre každý proces v systéme obsahuje práve 1 adresár so štruktúrou. /root domovský adresár hlavného používateľa (administrátora) systému (root-a). /sbin systémové spustiteľné súbory (napr. program init). /srv obvykle obsahuje podadresáre ftp (domovský adresár pre ftp) a www (hlavný adresár apache). Vo verzii CentOS5 (RedHat 5) je hlavne z dôvodu kompatibility, webové adresáre sa nachádzajú vo /var/www. /tmp do tohto adresára si rôzne programy ukladajú dočasné súbory. /usr adresár obsahuje súbory, ktoré už nie sú až také základné pre samotný systém. Na prvý pohľad je zrejmá podobnosť podadresárov s adresármi v roote sú tu podadresáre bin, etc, lib, sbin Samotné podadresáre majú totožný význam ako podadresáre v koreňovom adresári sem sa ale inštalujú už konkrétne špecifické programy, napr. rôzne editory, komprimačné programy, a pod. V adresári/usr je podadresár local (/usr/local/), ktorý zase obsahuje štandardnú štruktúru (bin, lib,...). Tento adresár je najvhodnejším kandidátom na vaše inštalácie rôzneho špecifického softvéru. /var posledný adresár, obsahuje pre nás dôležité informácie o logoch (/var/log), poštu (/var/spool/mail) a pod. O logoch platí to, čo aj o konfiguračných súboroch je potrebné hľadať súbor/adresár totožný/podobný s názvom programu.

43 Základy Linuxu Cesta Absolútna cesta začína znakom / a musí obsahovať všetky adresáre vedúce k výslednému adresáru, do ktorého chceme vstúpiť. Relatívna cesta sa vzťahuje k aktuálnemu adresáru. Príklady relatívnych ciest:../home/soki/ahoj.txt../../home/soki/ahoj.txt./test/lenka.txt ~/test/lenka.txt Ak máme súbor cron nachádzajúci sa v adresári /etc/default: root@vm3:/etc/default# ls /etc/default/ apache2 cron ifupdown rcs ssh wide-dhcpv6-client bind9 dbus klogd rrdcached syslogd xinetd bind9.dpkg-dist devpts locale rsync sysstat bootlogd fetchmail portmap samba tmpfs collectd halt quota saslauthd useradd Ak chceme editovať súbor cron, môžeme to urobiť niekoľkými spôsobmi. V nasledujúcom prípade ide o absolútnu cestu. Túto cestu absolútne zadávame od koreňa /. cat /etc/default/cron Naproti tomu nasledujúce príkazy sú príkladmi použitia relatívnych ciest: alebo cd /etc cat default/cron cd /etc/default cat cron 4.3. Špeciálne adresáre V operačnom systéme Unix, podobne ako v operačnom systéme DOS, existujú dva špeciálne adresáre: Adresár. špecifikuje aktuálny adresár a

44 Základy Linuxu -44- adresár.. špecifikuje nadradený adresár. ls -la /home total 24 drwxr-xr-x 6 root root 4096 Aug 17 17:09. drwxr-xr-x 20 root root 4096 Aug 10 19:14.. drwxr-xr-x 3 lila lila 4096 Sep lila drwxr-xr-x 2 martin martin 4096 Jul 30 13:15 martin drwxr-xr-x 4 soki soki 4096 Aug 18 20:07 soki drwxr-xr-x 11 stevo stevo 4096 Aug 12 16:20 stevo Tieto skratky existujú v každom adresári, nie vždy však majú tento význam. Napríklad hlavný adresár má ako nadradený adresár sám seba. Ďalším špeciálnym adresárom je domovský adresár. Jeho označenie je: ~. Ak máme ako domovský adresár /home/user Namiesto: /home/user/mojedata/notes.txt Môžeme napísať: ~/mojedata/notes.txt Vyššie uvedený zápis môžeme považovať za relatívnu cestu Príkazy na prácu so súbormi a adresármi touch Tento príkaz má viac spôsobov použitia, ale v praxi využijeme najviac možnosť vytvárať nové prázdne súbory. Pôvodný zámer tohto príkazu bolo aktualizovanie časovej pečiatky súborov. Avšak, vzhľadom k programovej chybe, príkaz touch vytvoril prázdny súbor, ak daný súbor neexistuje. V čase, keď bola táto chyba objavená, ľudia používali príkaz touch na vytvorenie prázdnych súborov, a to je dnes akceptované použitie tohto príkazu.

45 Základy Linuxu -45- Syntax: touch názov_súboru Príklad: touch /home/soki/ahoj ls /etc/default/ apache2 cron ifupdown rcs ssh wide-dhcpv6-client bind9 dbus klogd rrdcached syslogd xinetd bind9.dpkg-dist devpts locale rsync sysstat bootlogd fetchmail portmap samba tmpfs collectd halt quota saslauthd useradd touch /etc/default/ahoj.txt ls /etc/default/ ahoj.txt cron klogd rsync tmpfs apache2 dbus locale samba useradd bind9 devpts portmap saslauthd wide-dhcpv6-client bind9.dpkg-dist fetchmail quota ssh xinetd bootlogd halt rcs syslogd collectd ifupdown rrdcached sysstat ODBCDataSources inittab postfix Príkaz touch vie vytvoriť viac ako 1 súbor v danom čase [soki@student]$ touch file-{one,two}-{a,b} [soki@student]$ ls l -rw-rw-r-- 1 soki soki 0 Apr 8 10:33 file-one-a -rw-rw-r-- 1 soki soki 0 Apr 8 10:33 file-one-b -rw-rw-r-- 1 soki soki 0 Apr 8 10:33 file-two-a -rw-rw-r-- 1 soki soki 0 Apr 8 10:33 file-two-b -rw-rw-r-- 1 soki soki 0 Apr 8 10:29 newfile ls (list) Prvým z príkazov potrebných pre prácu so súbormi a adresármi bude príkaz ls. Účelom tohto príkazu je zobrazenie obsahu adresára. Syntax:

46 Základy Linuxu -46- ls [prepínače] názov_adresára Príklad: ls /etc ls /etc ODBCDataSources inittab postfix X11 inputrc ppp adduser.conf insserv profile adjtime insserv.conf profile.d ajaxplorer insserv.conf.d protocols aliases iproute2 python aliases.db issue python2.6 alternatives issue.net python3.1 apache2 javascript-common quotagrpadmins apparmor.d kernel quotatab apt ld.so.cache rc.local bash.bashrc ld.so.conf rc0.d bash_completion.d ld.so.conf.d rc1.d Prepínače: -a zobrazí aj skryté súbory (skrytý súbor je ten, ktorý začína na. ) root@vm3:/etc/default# ls -a /etc. init.d phpmyadmin.. initramfs-tools postfix.pwd.lock inittab ppp ODBCDataSources inputrc profile X11 insserv profile.d adduser.conf insserv.conf protocols adjtime insserv.conf.d python ajaxplorer iproute2 python2.6 aliases issue python3.1 aliases.db issue.net quotagrpadmins alternatives javascript-common quotatab apache2 kernel rc.local apparmor.d ld.so.cache rc0.d apt ld.so.conf rc1.d l zobrazí dlhý zoznam ls -l /etc total 872

47 Základy Linuxu -47- drwxr-xr-x 2 root root 4096 Mar ODBCDataSources drwxr-xr-x 5 root root 4096 Jul 16 14:07 X11 -rw-r--r-- 1 root root 2981 Aug adduser.conf -rw-r--r-- 1 root root 10 Jul 13 23:19 adjtime drwxr-xr-x 2 root root 4096 Jul 31 00:56 ajaxplorer -rw-r--r-- 1 root root 233 Aug aliases -rw-r--r-- 1 root root Aug 4 01:59 aliases.db drwxr-xr-x 2 root root 4096 Aug 12 12:02 alternatives drwxr-xr-x 7 root root 4096 Jul 19 04:50 apache2 drwxr-xr-x 2 root root 4096 Jul 13 23:27 apparmor.d drwxr-xr-x 6 root root 4096 Jul 31 00:55 apt -h používa sa spoločne s prepínačom l a zobrazuje veľkosti v čitateľnej podobe root@vm3:/etc/default# ls -lh /etc total 872K drwxr-xr-x 2 root root 4.0K Mar ODBCDataSources drwxr-xr-x 5 root root 4.0K Jul 16 14:07 X11 -rw-r--r-- 1 root root 3.0K Aug adduser.conf -rw-r--r-- 1 root root 10 Jul 13 23:19 adjtime drwxr-xr-x 2 root root 4.0K Jul 31 00:56 ajaxplorer -rw-r--r-- 1 root root 233 Aug aliases -rw-r--r-- 1 root root 12K Aug 4 01:59 aliases.db drwxr-xr-x 2 root root 4.0K Aug 12 12:02 alternatives drwxr-xr-x 7 root root 4.0K Jul 19 04:50 apache2 drwxr-xr-x 2 root root 4.0K Jul 13 23:27 apparmor.d drwxr-xr-x 6 root root 4.0K Jul 31 00:55 apt Vo výstupe ls, jednotlivé stĺpce majú nasledujúci význam: Typ súboru a oprávnenia (d adresár, l symbolická linka, r read, w write, x executable) Počet linkov k súboru Názov používateľa Názov skupiny veľkosť (v bytoch) dátum čas

48 Základy Linuxu -48- Názov súboru pwd (print working directory) V operačnom systéme LINUX je zavedený pojem aktuálny adresár. Pokiaľ chcete zistiť, aký je váš aktuálny adresár, použijete tento príkaz. Syntax: pwd Príklad: pwd root@vm3:/etc/default# pwd /etc/default cd (changing directory) Na zmenu adresára používame príkaz cd. Syntax: cd názov_adresára Príklad: cd /etc root@vm3:/etc/default# pwd /etc/default root@vm3:/etc/default# cd /etc/ root@vm3:/etc# pwd /etc Ak sa chceme vrátiť o adresár vyššie, použijeme nasledujúci príkaz:

49 Základy Linuxu -49- cd cp (copy) Na kopírovanie súborov používame príkaz cp. Tento príkaz má 2 režimy prevádzky: 1. Kopírovať jeden alebo viac súborov do adresára Syntax: cp názov_súboru1 názov_súboru2 názov_súboru3 názov_cieľového_adresára Príklad: Chceme skopírovať súbory jedalen1 jedalen2 jedalen3 do adresára budova v adresári /etc cp /home/soki/jedalen1 /home/soki/jedalen2 /home/soki/jedalen3 /etc/budova 2. Kopírovanie súboru do nového súboru s novým názvom Syntax: cp názov_zdrojového_súboru názov_cieľového_súboru Príklad: Chceme skopírovať súbor jedalen v adresári /home/soki na budova v adresári /etc cp /home/soki/jedalen /etc/budova Ak existujú viac ako dva parametre zadané príkazom cp, potom posledný parameter je vždy cieľový adresár mv (move) Na presunutie alebo premenovanie súboru/adresára používame príkaz mv. Syntax: mv názov_zdrojové_súboru cieľový_adresár Príklad: Chceme premiestniť súbor subor.txt v adresári /etc do adresára /home

50 Základy Linuxu -50- mv /etc/subor.txt /home Ak presúvame ten istý súbor do toho istého adresára len s iným názvom docielime jeho premenovanie: mv /etc/milacik.txt /etc/chrobacik.txt mkdir (make directory) Na vytvorenie adresára používame príkaz mkdir. Syntax: mkdir názov_adresára Príklad: Chceme vytvoriť nový adresár s názvom test v adresári /home mkdir /home/test Príklad: Chceme vytvoriť niekoľko nových adresárov s názvami test2, test3 a test4 v adresári /home mkdir /home/test2 /home/test3 /home/test4 V niektorých prípadoch budete potrebovať vytvoriť aj nadradené adresáre. Napríklad chcete vytvoriť adresár teta v adresári /home/test/rodina/. Adresár rodina ale vytvorený nemáme. Podľa vyššie uvedeného by ste použili: mkdir /home/test/rodina/teta Toto Vám vyhodí chybu: root@vm3:/etc# mkdir /home/test/rodina/teta mkdir: cannot create directory `/home/test/rodina/teta': No such file or directory

51 Základy Linuxu -51- Na takéto vytvorenie vnorených adresárov je potrebné použiť prepínač p (parent-rodič). mkdir p /home/test/rodina/teta rm (remove) Na vymazanie súborov používame príkaz rm. Syntax: rm názov_suboru Príklad: Chceme zmazať súbor milacik.txt v adresári /etc: rm /etc/milacik.txt Prepínače: -f tento prepínač použijete v prípade, ak nechcete odpovedať na otázky pri mazaní rm -f /etc/milacik.txt rmdir (remove directory) Na mazanie adresára používame príkaz rmdir. Syntax: rmdir názov_adresára Príklad: Chceme zmazať adresár s názvom test v adresári /home rmdir /home/test Príklad: Chceme zmazať niekoľko adresárov v adresári /home s názvami test2, test3 a test4 rmdir /home/test2 /home/test3 /home/test4 Samotný príkaz rmdir odmietne odstrániť adresár, ktorý neexistuje, alebo ktorý nie je prázdny. Odstránenie neprázdneho adresára je možné prostredníctvom príkazu rm s použitím prepínača r (recursive rekurzívne):

52 Základy Linuxu -52- rm r /home/test Pri mazaní podadresárov sa operačný systém opýta, či chcete zmazať podadresáre, ktoré nie sú prázdne. Aby ste sa vyhli týmto otázkam, zadajte navyše prepínač -f rm rf /home/test 4.5. Prístupové práva Každý súbor, program, či spustený proces v LINUXe má nastavené tzv. prístupové práva. Prístupové práva súborov/adresárov: čítanie (read), zapisovanie (write) a vykonanie (execute) vlastník (owner), skupina (group), ostatní (other) UGO informácie sú uložené v i-nodoch (i-uzloch) - dátová štruktúra uchovávajúca metadáta o súboroch a adresároch

53 Základy Linuxu -53- Príklad: - rwx r-x r-x ide o súbor (-) rwx (vlastník) má právo čítať (r), zapisovať (w) a spúšťat (x). Súčet oktálových hodnôt je = 7. r-x (skupina) má právo čítať (r) a spúšťať (x). Súčet oktálových hodnôt je = 5. r-x (ostatní) majú právo čítať (r) a spúšťať (x). Súčet oktálových hodnôt je = 5. sumárny oktálový zápis je chmod (change mode) Na zmenu oprávnení k súborom a adresárom používame príkaz chmod.

54 Základy Linuxu -54- Syntax: chmod [prepínače] [mód] súbor/adresár Príklad: Chceme zmeniť oprávnenia k súboru ahoj v adresári /home, tak, aby vlastník mal plné oprávnenia, skupina mohla len čítať a ostatní nemali žiadne oprávnenia. chmod 740 /home/ahoj Prepínače: -R umožňuje zmenu urobiť rekurzívne

55 Základy Linuxu -55- Chceme zmeniť oprávnenia rekurzívne v celom adresári /home (aj podadresáre a súbory) tak, aby všetci mohli všetko chmod 777 /home -R chown (change owner) Na zmenu vlastníka a skupiny k súborom a adresárom používame príkaz chown. Syntax: chown [prepínače] [vlastník] súbor/adresár chown [prepínače] [vlastník:skupina] súbor/adresár Príklad: Chceme zmeniť vlastníka na test k súboru ahoj v adresári /home chown test /home/ahoj Príklad: Chceme zmeniť vlastníka na test a skupinu na talent k súboru ahoj v adresári /home chown test:talent /home/ahoj Prepínače: -R umožňuje zmenu urobiť rekurzívne Chceme zmeniť vlastníka na test a skupinu na talent v celom adresári /home (aj podadresáre a súbory)

56 Základy Linuxu -56- chown test:talent /home/ahoj -R chgrp (change group) Na zmenu skupiny k súborom a adresárom používame príkaz chgrp. Syntax: chgrp [prepínače] [skupina] súbor/adresár Príklad: Chceme zmeniť skupinu na talent k súboru ahoj v adresári /home chgrp test /home/ahoj Prepínače: -R umožňuje zmenu urobiť rekurzívne Chceme zmeniť skupinu na talent v celom adresári /home (aj podadresáre a súbory) chgrp talent /home/ahoj -R umask Oprávnenia pre nový adresár určuje hodnota umask, ktorú je možné nastaviť ručne pomocou prepínača -m.

57 Základy Linuxu -57- umask Mód adresára Mód adresára drwxrwxrwx drwxrwxr-x drwxr-xr-x drwxr-x Úlohy k správe súborového systému Úloha 1: Vytvorte adresár test v /home Úloha 2: Vytvorte adresár test2 a podadresár podtest v /home pomocou jedného príkazu Úloha 3: Vytvorte súbor ahoj.txt v adresári /home/test Úloha 5: Zapíšte text Ahoj svet do súboru /home/test/ahoj.txt Úloha 6: Skopírujte súbor /home/test/ahoj.txt do adresára /home Úloha 7: Premenujte súbor /home/ ahoj.txt na zbohom.txt Úloha 8: Zmažte súbor /home/ zbohom.txt Úloha 9: Skopírujte adresár /etc do adresára /home/test Úloha 9: Skopírujte adresár /etc aj s podadresármi do adresára /home/test Úloha 9: Skopírujte celý obsah adresára /etc do adresára /home/test Úloha 10: Zmeňte vlastníka pre adresár /home/test a všetky súbory v ňom na test

58 Základy Linuxu -58- Úloha 11: Zmažte prázdny adresár /home/test2/podtest Úloha 11: Zmažte neprázdny adresár /home/test2/podtest Úloha 12: Zmažte adresár /home/test vrátane všetkých súborov 5. Textové editory a práca s textom 5.1. Editor vi VI editor - je obrazovkový textový editor napísaný Billom Joyom v roku 1976 pre operačný systém BSD Editor nano Inštalácia: Debian, Ubuntu: apt-get install nano

59 Základy Linuxu -59- CentOS: yum install nano V hornej lište je napísaná verzia nano (v našom prípade 2.2.4) a otvorený súbor (v našom prípade /etc/passwd) Klávesová skratka Význam CTRL+g CTRL+x CTRL+w CTRL + k F2 Pomoc Ukončenie nano / ukončenie nápovedy Vyhľadávanie reťazca (ukončenie vyhľadávania CTRL+c) Zmazanie 1 riadku Uloženie zmien 5.3. Príkazy na prácu so súbormi

60 Základy Linuxu cat V praxi veľmi často potrebujeme vypísať obsah súboru (na obrazovku). Na to je vhodný príkaz cat. Syntax: cat [prepínače] názov_súboru Príklad: cat /etc/passwd root@vm3:/home/soki# cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh Prepínače: -n zobrazí aj poradie riadku root@vm3:/home/soki# cat -n /etc/passwd 1 root:x:0:0:root:/root:/bin/bash 2 daemon:x:1:1:daemon:/usr/sbin:/bin/sh 3 bin:x:2:2:bin:/bin:/bin/sh 4 sys:x:3:3:sys:/dev:/bin/sh 5 sync:x:4:65534:sync:/bin:/bin/sync 6 games:x:5:60:games:/usr/games:/bin/sh tac Ak chceme vypísať súbor v obrátenom poradí, teda od konca súboru až na začiatok, použijeme príkaz tac. Syntax: tac názov_súboru Príklad: tac /etc/passwd

61 Základy Linuxu -61- tac /etc/passwd postfix:x:108:112::/var/spool/postfix:/bin/false messagebus:x:107:111::/var/run/dbus:/bin/false mysql:x:106:110:mysql Server,,,:/var/lib/mysql:/bin/false sshd:x:105:65534::/var/run/sshd:/usr/sbin/nologin fetchmail:x:104:65534::/var/lib/fetchmail:/bin/false echo Ak chceme zobraziť riadok textu, použijeme príkaz echo. Syntax: echo text Príklad: echo Moj prvy text v Linuxe root@vm3:/var/log# echo "Moj prvy text v Linuxe" Moj prvy text v Linuxe Príkaz echo môžeme použiť aj na zapísanie nejakého textu do súboru: echo "Ahoj" > /home/soki/adresar.txt root@vm3:/# echo "Ahoj" > /home/soki/adresar.txt root@vm3:/# cat /home/soki/adresar.txt Ahoj more Často je však vypisovaný súbor dlhší, ako je počet riadkov obrazovky, a tak sa začiatok súboru síce mihne na obrazovke, ale potom utečie mimo obrazu a my si tak môžeme prezerať iba jeho posledné riadky, ktoré na obrazovke zostali stáť. Aby sme scrollovaniu (čítaj skrol...) zabránili, použijeme príkaz more. Jeho úlohou je zobraziť súbor po jednotlivých obrazovkách akoby stránkach. Prečítanú časť posunieme ďalej stlačením medzerníka. Syntax:

62 Základy Linuxu -62- more názov_súboru Príklad: more /etc/passwd more /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh www-data:x:33:33:www-data:/var/www:/bin/sh backup:x:34:34:backup:/var/backups:/bin/sh list:x:38:38:mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh smmta:x:101:103:mail Transfer Agent,,,:/var/lib/sendmail:/bin/false smmsp:x:102:104:mail Submission Program,,,:/var/lib/sendmail:/bin/false bind:x:103:107::/var/cache/bind:/bin/false fetchmail:x:104:65534::/var/lib/fetchmail:/bin/false --More--(72%) less Less neznamená v tomto prípade menej, ale je to zlepšený variant príkazu more. Príkaz Syntax: less názov_súboru Príklad: less /etc/passwd

63 Základy Linuxu -63- tac /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh www-data:x:33:33:www-data:/var/www:/bin/sh backup:x:34:34:backup:/var/backups:/bin/sh list:x:38:38:mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh smmta:x:101:103:mail Transfer Agent,,,:/var/lib/sendmail:/bin/false smmsp:x:102:104:mail Submission Program,,,:/var/lib/sendmail:/bin/false bind:x:103:107::/var/cache/bind:/bin/false fetchmail:x:104:65534::/var/lib/fetchmail:/bin/false /etc/passwd Tento príkaz vypíše obsah na obrazovku, ale má komfortnejšie ovládanie. Môžeme nielen posúvať výpis dopredu, ale aj naspäť. Stačí, ak použijeme klávesy PageUp, PageDown, kurzorové šípky, Enter a, samozrejme, medzerník head Príkaz head vypíše prvé časti súboru. Syntax: head [prepínače] názov_súboru Príklad: head /etc/passwd head /etc/passwd root:x:0:0:root:/root:/bin/bash

64 Základy Linuxu -64- daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh head /etc/passwd Prepínače: -n počet prvých riadkov head n 3 /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh tail Príkaz tail vypíše posledné časti súboru. Syntax: tail [prepínače] názov_súboru Príklad: tail /etc/passwd root@vm3:/home/soki# tail /etc/passwd nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh smmta:x:101:103:mail Transfer Agent,,,:/var/lib/sendmail:/bin/false smmsp:x:102:104:mail Submission Program,,,:/var/lib/sendmail:/bin/false bind:x:103:107::/var/cache/bind:/bin/false fetchmail:x:104:65534::/var/lib/fetchmail:/bin/false sshd:x:105:65534::/var/run/sshd:/usr/sbin/nologin mysql:x:106:110:mysql Server,,,:/var/lib/mysql:/bin/false messagebus:x:107:111::/var/run/dbus:/bin/false postfix:x:108:112::/var/spool/postfix:/bin/false

65 Základy Linuxu -65- root:x:0:0:root:/root:/bin/bash Prepínače: -n počet posledných riadkov tail n 4 /etc/passwd mysql:x:106:110:mysql Server,,,:/var/lib/mysql:/bin/false messagebus:x:107:111::/var/run/dbus:/bin/false postfix:x:108:112::/var/spool/postfix:/bin/false root:x:0:0:root:/root:/bin/bash cut Ak potrebujeme oddeliť niektoré stĺpce z textového súboru, použijeme príkaz cut. Syntax: cut [prepínače] názov_súboru Príklad: cut -d ":" -f "1,3" /etc/passwd root@vm3:/var/log# cut -d ":" -f "1,3" /etc/passwd root:0 daemon:1 bin:2 sys:3 sync:4 games:5 man:6 lp:7 mail:8 news:9 Vyššie uvedený príkaz cut s prepínačmi d a f zobrazí zo súboru /etc/passwd 1. a 3. stĺpec. Prepínače: -d definovanie oddeľovača v súbore. Najčastejšie je to medzera alebo dvojbodka (napr. v /etc/passwd) -f určenie, ktoré stĺpce sa majú vypísať

66 Základy Linuxu du V prípade, ak chceme vedieť veľkosť niektorého súboru alebo celého adresára na disku, použijeme príkaz du. Syntax: du [prepínače] názov_súboru/názov_adresára Príklad: du /etc root@vm3:/var/log# du /etc/ 8 /etc/calendar 16 /etc/resolvconf/update-libc.d 20 /etc/resolvconf 12 /etc/apt/apt.conf.d 4 /etc/apt/sources.list.d 4 /etc/apt/trusted.gpg.d 4 /etc/apt/preferences.d 76 /etc/apt 12 /etc/ld.so.conf.d Vyššie uvedený príklad zobrazí veľkosť jednotlivých adresárov v adresári /etc Prepínače: -s zobrazí sumárnu veľkosť root@vm3:/var/log# du -s /etc/ 5172 /etc/ Vyššie uvedený príkaz s prepínačom s zobrazí veľkosť adresára /etc -h zobrazí veľkosť v čitateľnej podobe root@vm3:/var/log# du -sh /etc/ 5.1M /etc/ Vyššie uvedený príkaz s prepínačmi s a -h zobrazí veľkosť adresára /etc v čitateľnej podobe file Príkaz file používame na zistenie typu súboru a pritom ten súbor nemusíme otvárať.

67 Základy Linuxu -67- Syntax: file [prepínače] názov_súboru Príklad: file /etc/passwd file /etc/passwd /etc/passwd: ASCII text Príklad: root]# file * dostaneme opis všetkých súborov a podadresárov v danom adresári. Pripomínam, že adresár je tiež určitá forma súboru, a tak väčšina príkazov pre súbory platí aj pre adresáre (okrem výnimiek ako mkdir, rmdir a pod.) find Na vyhľadávanie súborov sa v Linuxe (a aj v Unixe) používa veľmi mocný príkaz find. Má mnoho rôznych volieb a kritérií, podľa ktorých vyhľadáva. Syntax: find [prepínače] výraz Príklad: Chceme nájsť v celom koreňovom adresári súbory a adresáre, ktoré obsahujú slovo test find test root@vm3:/home/soki# find test test test/xsession.options test/xsession test/xwrapper.config Prepínače:

68 Základy Linuxu -68- Prepínač Význam Príklad -name» hľadanie na základe názvu súboru find /bin /usr/bin -name 'ch* -iname» case insensitive hľadanie názvu súboru find /etc -iname '*pass* -ctime» hľadanie na základe času, kedy bol súbor find /home -ctime mtime vytvorený, poslednýkrát modifikovaný, find /var/log -mtime -l -atime bolo k nemu pristúpené find /tmp -atime +30 -group» hľadanie na základe skupiny find /tmp -user `whoami` -user alebo meno používateľa v súbore -perm» hľadanie na základe oprávnení find /usr/bin -perm (presne, alebo +vrátane, alebo všetky) find /etc -type f -perm size» hľadanie súborov určitej veľkosti find / -size +5000k -type» hľadanie súborov, adresárov, rúr, linkov find /dev /var -type p -name vyhľadávanie podľa mena súboru Príklad: Predstavme si, že chceme vyhľadať súbor podľa mena zaloha.tgz, ale nevieme, kde sa môže nachádzať, takže radšej začneme hneď od koreňa. Výsledok chceme vypísať na obrazovku. Zadáme teda príkaz: [root@asterix root]# find / -name zaloha.tgz print Keď find nájde viac súborov s tým istým menom, vypíše ich všetky. Výpis spôsobí práve parameter print. -size vyhľadávanie podľa veľkosti súboru root@vm3:/home/soki# find /var/log/ -size +4M Vo vyššie uvedom príklade sme chceli vyhľadať v adresári /var/log súbory, ktorých veľkosť presahuje 4MB. root@vm3:/home/soki# find /var/log/ -size -4M Vo vyššie uvedom príklade sme chceli vyhľadať v adresári /var/log súbory, ktorých veľkosť nepresahuje 4MB. -exec vyhľadanie a vykonanie akcie Keď príkaz find nájde súbor, predvolená akcia zobrazí meno súboru. Alternatívna akcia, ktorá je veľmi užitočná, je find exec príkaz find spustí zadaný program zasielaním názvu súboru na neho. príkaz find nahradí názov príkazu na mieste špeciálnych znakov {}.

69 Základy Linuxu -69- Pr. 1: Príkaz sa musí končiť ";", ktoré musia byť uvedené tak, že ich shell interpretuje ako úvodzovky (použitie \) $ find /etc -type f -exec cat {} \; # nájdi, potom každý zobraz Pr. 2: student:~ $ find /bin -perm exec ls -lad {} \; -rwsr-xr-x 1 root root Jun /bin/ping -rwsr-xr-x 1 root root Aug /bin/mount -rwsr-xr-x 1 root root Aug /bin/umount -rwsr-xr-x 1 root root Aug /bin/su locate Druhou možnosťou, ako nájsť súbor, je použitie príkazu locate. Ten však pracuje na inom princípe ako find. Príkaz locate nevyhľadáva súbor skutočne na disku, ale vo svojej databáze, kde má zapísané umiestnenie všetkých súborov, stačí sa len pozrieť. Tým dosahuje rýchlejšie výsledky ako find. Nevýhodou je, že tá databáza nemusí byť vždy aktuálna. Najprv, ako použijete tento príkaz, musíte zaktualizovať databázu: updatedb Syntax: locate [prepínače] reťazec Príklad: Chceme nájsť v celom systéme všetky súbory, ktoré majú príponu png. locate "*.png" root@vm3:/home/soki# locate "*.png" /home/soki/car.png /home/soki/flag.png /home/soki/flag_france.png /home/test/admin/refresh.png /home/test/admin/admin/refresh.png

70 Základy Linuxu -70- Príklad: Chceme nájsť v celom systéme všetky súbory, ktoré obsahujú slovo test. locate "*test*" root@vm3:/home/soki# locate "*test*" /home/test /home/test2 /home/soki/test /home/soki/test/xsession /home/soki/test/xsession.options /home/soki/test/xwrapper.config /home/test/.bash_history /home/test/.bash_logout /home/test/.bashrc /home/test/.profile /home/test2/.bash_logout /home/test2/.bashrc /home/test2/.profile Hľadaný výraz je v úvodzovkách. Hviezdičky (*) nahrádzajú rôzny počet znakov. Napr. *test* = test, test123, ahojtest, 12test20, testujem, podtest Prepínače: -c zobrazí počet výsledkov vyhľadávania root@vm3:/home/soki# locate -c "*.png" 7734 Vyššie uvedený príkaz locate s prepínačom c zobrazí počet všetkých súborov s príponou png grep Príkaz grep (Global Regular Expression Printer) vyhľadáva zadaný reťazec znakov v príslušnom textovom súbore. Ak tento reťazec nájde, vypíše na obrazovku riadok, kde sa reťazec v súbore nachádza. Syntax: grep [prepínače] vzor názov_súboru Príklad:

71 Základy Linuxu -71- grep bin /etc/passwd grep bin /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh Prepínače: -v použijeme v prípade, ak chceme vybrať všetky riadky, ktoré neobsahujú hľadaný výraz root@vm3:/home/soki# grep -v home /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh man:x:6:12:man:/var/cache/man:/bin/sh Tento príkaz nám zobrazí tie riadky súboru /etc/passwd, ktoré neobsahujú slovo home wc Pomocou príkazu wc vieme vypísať počet riadkov, slov, bytov pre každý súbor. Syntax: wc [prepínače] názov_súboru Príklad:

72 Základy Linuxu -72- wc /etc/passwd wc /etc/passwd /etc/passwd Tento príkaz nám zobrazí 31 riadkov, 41 slov a 1375 znakov. Prepínače: -c zobrazí počet bytov v súbore root@vm3:/home/soki# wc -c /etc/passwd 1375 /etc/passwd -m zobrazí počet znakov v súbore root@vm3:/home/soki# wc -m /etc/passwd 1375 /etc/passwd -l zobrazí počet riadkov v súbore root@vm3:/home/soki# wc -l /etc/passwd 31 /etc/passwd -w zobrazí počet slov v súbore root@vm3:/home/soki# wc -w /etc/passwd 41 /etc/passwd sort Na zotriedenie riadkov v textovom súbore používame príkaz sort. Syntax: sort [prepínače] názov_súboru

73 Základy Linuxu -73- Príklad: Chceme zotriediť riadky v súbore /etc/passwd abecedne podľa prvého znaku v riadku. sort /etc/passwd root@vm3:/home/soki# sort /etc/passwd backup:x:34:34:backup:/var/backups:/bin/sh bin:x:2:2:bin:/bin:/bin/sh bind:x:103:107::/var/cache/bind:/bin/false daemon:x:1:1:daemon:/usr/sbin:/bin/sh fetchmail:x:104:65534::/var/lib/fetchmail:/bin/false games:x:5:60:games:/usr/games:/bin/sh gnats:x:41:41:gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh Prepínače: -n zotriedi podľa numerických hodnôt root@vm3:/home/soki# cat /etc/passwd cut -d ":" -f 3 sort -n Vyššie uvedený príkaz je možné rozdeliť do 3 samostatných príkazov cat, cut a sort. Príkaz cat /etc/passwd vypíše obsah súboru, ale keďže tu je pipe tak namiesto vypísania na obrazovku obsah pošle na vstup ďalšieho príkazu. Ďalší príkaz cut zobrazí vybrané stĺpce. Tento príkaz má na vstupe obsah súboru /etc/passwd. Pomocou prepínačov d : a f 3 vyberieme 3. Stĺpec. Keďže aj tu ide pipe, tak výstup sa pošle na vstup ďalšieho príkazu, ktorým je sort. Tento príkaz má prepínač n, ktorý zotriedi všetky čísla. -r otočí výsledky triedenia root@vm3:/home/soki# sort -r /etc/passwd www-data:x:33:33:www-data:/var/www:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync sshd:x:105:65534::/var/run/sshd:/usr/sbin/nologin smmta:x:101:103:mail Transfer Agent,,,:/var/lib/sendmail:/bin/false

74 Základy Linuxu -74- smmsp:x:102:104:mail Submission Program,,,:/var/lib/sendmail:/bin/false root:x:0:0:root:/root:/bin/bash tr Pomocou príkazu tr vieme preložiť alebo zmazať znaky. Syntax: tr [prepínače] množina1 množina2 Príklad: Chceme zmeniť všetky písmená v súbore text.txt na veľké písmená. cat text.txt tr "a-z" "A-Z" root@vm3:/home/soki# cat text.txt Mam rad Linux. Ale najviac lubim najlepsiu osobku na svete :) root@vm3:/home/soki# cat text.txt tr "a-z" "A-Z" MAM RAD LINUX. ALE NAJVIAC LUBIM NAJLEPSIU OSOBKU NA SVETE :) 5.4. Úlohy Úloha 1: Zobrazte súbor /etc/passwd Úloha 2: Zobrazte prvé 3 riadky súboru /etc/passwd Úloha 3: Zobrazte posledné 4 riadky súboru /etc/passwd Úloha 4: Spočítajte počet riadkov v súbore /etc/passwd Úloha 5: Vyhľadajte v súbore /etc/passwd riadky, ktoré obsahujú slovo bash Úloha 6: Vyhľadajte v súbore /etc/passwd riadky, ktoré neobsahujú slovo bash Úloha 7: Spočítajte riadky v súbore /etc/passwd, ktoré obsahujú slovo bash Úloha 8: Spočítajte riadky v súbore /etc/passwd, ktoré neobsahujú slovo bash Úloha 9: Zobrazte len 1., 3. a 5. stĺpec v súbore /etc/passwd

75 Základy Linuxu -75-

76 Základy Linuxu Správa procesov 6.1. Úvod do procesov v Linuxe Proces spustený program, ktorému operačný systém po spustení pridelí pamäť a ďalšie systémové prostriedky (napr. procesor - CPU). Každý proces má svoj jedinečný identifikátor (PID process ID). Systém Linux je viacúlohový a viacužívateľský, čo znamená, že v tomto systéme musí existovať niekoľko procesov bežiacich v tom istom čase Zobrazenie procesov a ich stavov V Linuxe máme tabuľku procesov, ktorá sa podobá dátovej štruktúre. Uchováva v sebe všetky procesy a informácie o nich. Operačný systém identifikuje procesy na základe ich PID ps (process status) Na zobrazenie informácii o procesoch používame príkaz ps. Syntax: ps [prepínače] Príklad: ps root@vm3:/home/soki# ps PID TTY TIME CMD pts/0 00:00:00 sudo pts/0 00:00:00 su pts/0 00:00:00 bash pts/0 00:00:00 ps Prepínače: -e zobrazí všetky procesy root@vm3:/etc/default# ps -e

77 Základy Linuxu a zobrazí všetky procesy konkrétneho terminálu ps -a -f usporiada zobrazovanie podprocesov do stromu (ak je to možné) ps ef UID PID PPID C STIME TTY TIME CMD root :48 pts/0 00:00:00 sudo su root :49 pts/0 00:00:00 su root :49 pts/0 00:00:00 bash root :56 pts/0 00:00:00 ps -af -o zadefinovanie výstupného formátu root@vm3:/etc/default# ps o pid ppid user PID PPID USER root root root root Vyššie uvedený príkaz ps s prepínačom -o zobrazí procesy vo formáte pid, ppid a user. Výstup z ps: root@vm3:/home/soki# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root ? Ss Aug10 0:05 init [2] root ? Ss Aug10 0:00 /usr/sbin/sasla root ? S Aug10 0:00 /usr/sbin/sasla root ? Ss Aug10 0:01 /sbin/syslogd root ? Ss Aug10 0:01 /usr/sbin/cron ? Ss Aug10 0:00 /usr/bin/dbus-d root ? S Aug10 0:00 /bin/sh /usr/bi mysql ? Sl Aug10 5:42 /usr/sbin/mysql root ? S Aug10 0:00 logger -t mysql root ? Ss Aug10 0:00 /usr/sbin/sshd soki ? S 15:47 0:00 sshd: soki@pts/ soki pts/0 Ss 15:47 0:00 bash USER () - informácia o užívateľovi, ktorý proces spustil PID (process ID) - identifikačné číslo procesu, PID 1 má proces INIT.

78 Základy Linuxu -78- %CPU () - informácia o využití procesoru pre proces v percentách %MEM () - informácia o využití pamäte pre proces v percentách VSZ () veľkosť virtuálnej pamäte procesu v kb RSS () - TTY () - informácia o tom, z ktorého terminálu bol proces spustený.? znamená, že proces nie je zviazaný so žiadnym terminálom STAT () - informácia, v akom stave je proces START () dátum/čas, kedy bol proces spustený TIME () - informácia o procesorovom čase, ktorý bol danému procesu už pridelený COMMAND () informácia o príkaze a jeho prepínačoch pstree Ďalším zaujímavým príkazom, ktorý prináša pekný pohľad na strom procesov, je príkaz pstree. Syntax: pstree [prepínače] Príklad: pstree root@vm3:/home/soki# pstree init-+-apache2---5*[apache2] -collectd---11*[{collectd}] -cron -dbus-daemon -master-+-pickup `-qmgr -mysqld_safe-+-logger `-mysqld---15*[{mysqld}] -saslauthd---saslauthd -sshd---sshd---sshd---bash---sudo---su---bash---pstree `-syslogd -p zobrazenie stromu procesov spolu s ich identifikátorom (PID) root@vm3:/etc/default# pstree l init(1)-+-apache2(2007)-+-apache2(28744) -apache2(28745)

79 Základy Linuxu apache2(29424) -apache2(29425) `-apache2(29450) -cron(408) -dbus-daemon(413) -master(683)-+-pickup(29458) `-qmgr(689) -mysqld_safe(439)-+-logger(552) `-mysqld(551)-+-{mysqld}(555) -{mysqld}(556) -saslauthd(338)---saslauthd(339) -sshd(691)---sshd(29333)---sshd(29335)---bash(29336)---sudo(29339)---s+ `-syslogd(360) pstree -a - zobrazenie argumentov, s ktorými boli procesy spustené. pstree -c - zabrání zhlukovaniu rovnakých procesov, t.j. vypíšu sa aj tie, ktoré sa niekoľkokrát za sebou opakujú. pstree -n - zoradí procesy podľa PID (číselne) a nie podľa mena. pstree -p - za každým procesom zobrazí v zátvorke jeho PID top Príkaz top poskytuje pohľad na vyťaženie procesora v reálnom čase. Tento príkaz zobrazuje zoznam procesov, ktoré najviac vyťažujú (používajú) procesor. Súčasne môže poskytnúť interaktívne rozhranie pre manipuláciu s nimi. Môže procesy triediť podľa využitia procesora, využitia pamäte a času behu procesu. Syntax: top [prepínače] Príklad: top root@vm3:/home/soki# top top - 19:16:20 up 15 days, 1 min, 1 user, load average: 0.00, 0.00, 0.00 Tasks: 27 total, 1 running, 26 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: k total, k used, k free, 0k buffers Swap: 0k total, 0k used, 0k free, 0k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 5588 root m 318m 3224 S :04.14 collectd

80 Základy Linuxu root S :05.03 init 338 root S :00.00 saslauthd 339 root S :00.00 saslauthd 360 root S :01.50 syslogd 408 root S :01.60 cron 413 messageb S :00.04 dbus-daemon 439 root S :00.00 mysqld_safe Stavy procesov Stavy procesov: D - proces je v neprerušiteľnom spánku ( v tomto stave sú zväčša procesy s I/O operáciami) R - proces je práve spracovaný procesorom S - proces zaspal T - proces bol pozastavený X - proces je mŕtvy Z - zombie - proces, ktorého rodičovský proces ukončil svoju činnosť < - proces s vysokou prioritou N - proces s nízkou prioritou L - proces ma uzamknuté stránky v pamäti platí to zvyčajne pre procesy pracujúce v reálnom čase s - je vedúci relácie l - je multi-threading + - je v skupine procesov, ktoré sú na popredí 6.3. Práca s procesmi & Použitie 1 konzoly, resp. terminálu pre každý spustený príkaz by v praxi znamenalo, že pre spustenie ďalšieho príkazu by ste museli použiť ďalšiu konzolu, či terminál. Takýto prístup je neefektívny. Našťastie Linux tento problém vyriešil a umožňuje presunúť spustený program na pozadie. K tomuto presunutiu slúži parameter &, ktorý sa zapisuje za daný príkaz. Syntax:

81 Základy Linuxu -81- príkaz & Príklad: Chceme poslať 20 ICMP dopytov na server na zistenie dostupnosti tohto servera. Toto chceme spraviť tak, aby proces bežal na pozadí. ping c 20 & jobs Na vypísanie bežiacich úloh v aktuálnom shelli slúži príkaz job. Syntax: jobs [prepínače] Príklad: Chceme vypísať bežiace úlohy spolu s ID skupiny procesu a adresára. jobs -p sleep Na uspanie procesu slúži príkaz sleep. Syntax: sleep [čas] s - sekundy (defaultne) m - minúty h - hodiny d - dni Príklad: Chceme proces uspať na 10 sekúnd. #!/bin/bash echo "Hi, I'm sleeping for 10 seconds..." sleep 10

82 Základy Linuxu -82- echo "all Done." bg Na presunutie procesu na pozadie používame príkaz bg: Syntax: bg príkaz Príklad: bg ping c 20 Na pozadie možno presunúť aj už bežiaci proces. Najprv musíme tento proces pozastaviť (na to použijeme klávesovú skratku CTRL+z), aby sme sa dostali k shellu a následne presunieme proces na pozadie fg Na presunutie procesu do popredia používame príkaz fg: Syntax: fg príkaz Príklad: fg ping c Zmena priority procesu Priorita procesu (nice) môže dosahovať hodnotu 20 až 19 (v niektorých systémoch až 20). Čím nižšia hodnota, tým má proces vyššiu prioritu. Predvolená hodnota spustených procesov je 0. Napríklad hodnota +19 spôsobí, že sa daný proces bude vykonávať iba pokiaľ iný proces od systému nič nepožaduje.

83 Základy Linuxu nice Na zmenu priority procesu používame príkaz nice. Syntax: nice [prepínače] príkaz Príklad: Chceme nastaviť prioritu procesu ping na 15. nice n 15 ping -c 20 Bežný užívateľ môže nastaviť prioritu iba v rozsahu 0 až 19. Iba root môže zadať aj zápornú hodnotu, a teda prioritu procesu zvýšiť renice Príkazom nice môžeme meniť prioritu iba u spusteného procesu, nie u už bežiaceho procesu v systéme. Pre zmenu priority procesu bežiaceho v systéme slúži príkaz renice. Syntax: renice [prepínače] príkaz Príklad: Chceme nastaviť prioritu procesu s PID 2144 na 5. renice root@vm3:/home/soki# renice : old priority 0, new priority 5 Pomocou príkazu renice meníme prioritu procesu (či viac procesov naraz) na základe PID procesu, vlastníka procesu, či skupinového vlastníka procesu. Bežný užívateľ môže meniť prioritu iba u svojich procesoch a navyše môže prioritu iba znižovať, rovnako ako pri príkaze nice. V niektorých prípadoch budete potrebovať zvýšiť prioritu procesov u viac procesov. Príklad: Chceme znížiť prioritu na 6 u všetkých procesov užívateľa test renice +6 u test

84 Základy Linuxu -84- renice +6 test 6.5. Signály a ich funkcia pri riadení procesov Signál: je systémom generovaná udalosť, ktorá sa používa na základe reakcie na podmienku a dáva takto procesu šancu uskutočniť odozvu. začínajú prefixom SIG. Typy signálov: SIGTERM - žiadosť o ukončenie procesu SIGSEGV - porušenie segmentácie pamäti SIGABORT - prerušenie procesu SIGHUP - odrezanie od terminálu (hangup) SIGKILL - "vražda" SIGQUIT - ukončenie terminálovej relácie procesu SIGGINT - prerušenie terminálu (Ctrl+c) SIGGILL - neplatná inštrukcia SIGCONT - navrátenie procesu zo stavu pozastavenia SIGSTOP - pozastavenie procesu (opak SIGCONT) SIGINT - ukončenie procesu na popredí Kill Na poslanie signálu k procesu používame príkaz kill. Syntax: kill [signál] pid Príklad: Chceme vypísať zoznam všetkých signálov. kill -l

85 Základy Linuxu -85- kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX Príklad: Chceme zabiť viac procesov prehliadača firefox. killall firefox Príklad: Chceme poslať defaultný signál (SIGTERM) pre procesy s PID: 123,188,2000 kill Príklad: Chceme zavraždiť (SIGKILL) proces s PID 200 kill

86 Základy Linuxu Úlohy Úloha 1: Zobrazte všetky procesy. Úloha 2: Zistite, či ssh démon beží na počítači. Úloha 3: Zobrazte procesy vo formáte user,pid, command. Úloha 4: Zobrazte procesy vo formáte user+pid+command. Úloha 5: Zobrazte všetky bežiace procesy spoločne s ich užívateľom. Úloha 6: Zobrazte strom procesov. Úloha 7: Zobrazte užívateľa, PID a PPID.

87 Základy Linuxu Správa programov 7.1. Balíčkovacie systémy Systém pre správu balíčkov je kolekcia nástrojov, ktoré poskytuje konzistentné spôsob inštalácie, upgrade a odobratie programov v počítači. Linuxové distribúcie pozostávajú z tisícov zreteľných softvérových balíkov. Programy sú distribuované prostredníctvom balíčkov, ktoré sú spojené s metadátami, ktoré obsahujú prídavné informácie, ako je popis účelu programu a zoznam závislostí potrebných pre správne spustenie programu. Sú poskytované úložískami: lokálne médiá (CD, DVD alebo pevný disk) online úložiska. Pri inštalácii, metadáta sú uložené v miestnej databáze balíčkov, ktorý sa používa na načítanie softvérových balíkov. zdroj: Rôzne distribúcie používajú rôzne balíčkovacie systémy Debian GNU/Linux - DPKG a APT Gentoo Linux - Portage Mandriva Linux - URPMI Fedory a Red Hat Enterprise Linuxu (yum a dnf) SUSE Linux - YaST. varianty systému BSD - Ports.

Linux Essentials Objectives Topics:

Linux Essentials Objectives Topics: Linux Essentials Linux Essentials is a professional development certificate program that covers basic knowledge for those working and studying Open Source and various distributions of Linux. Exam Objectives

More information

Copyright 2016 by Martin Krug. All rights reserved.

Copyright 2016 by Martin Krug. All rights reserved. MS Managed Service Copyright 2016 by Martin Krug. All rights reserved. Reproduction, or translation of materials without the author's written permission is prohibited. No content may be reproduced without

More information

TP-LINK 150Mbps Wireless AP/Client Router Model TL-WR743ND Rýchly inštalačný sprievodca

TP-LINK 150Mbps Wireless AP/Client Router Model TL-WR743ND Rýchly inštalačný sprievodca TP-LINK 150Mbps Wireless AP/Client Router Model TL-WR743ND Rýchly inštalačný sprievodca Obsah balenia TL-WR743ND Rýchly inštalačný sprievodca PoE injektor Napájací adaptér CD Ethernet kábel Systémové požiadavky

More information

Linux Kung-Fu. James Droste UBNetDef Fall 2016

Linux Kung-Fu. James Droste UBNetDef Fall 2016 Linux Kung-Fu James Droste UBNetDef Fall 2016 $ init 1 GO TO https://apps.ubnetdef.org GO TO https://apps.ubnetdef.org GO TO https://apps.ubnetdef.org GO TO https://apps.ubnetdef.org GO TO https://apps.ubnetdef.org

More information

kucharka exportu pro 9FFFIMU

kucharka exportu pro 9FFFIMU požiadavky na export kodek : Xvid 1.2.1 stable (MPEG-4 ASP) // výnimočne MPEG-2 bitrate : max. 10 Mbps pixely : štvorcové (Square pixels) rozlíšenie : 1920x1080, 768x432 pre 16:9 // výnimočne 1440x1080,

More information

Databázové systémy. SQL Window functions

Databázové systémy. SQL Window functions Databázové systémy SQL Window functions Scores Tabuľka s bodmi pre jednotlivých študentov id, name, score Chceme ku každému doplniť rozdiel voči priemeru 2 Demo data SELECT * FROM scores ORDER BY score

More information

Registrácia účtu Hik-Connect

Registrácia účtu Hik-Connect Registrácia účtu Hik-Connect Tento návod popisuje postup registrácie účtu služby Hik-Connect prostredníctvom mobilnej aplikácie a webového rozhrania na stránke www.hik-connect.comg contents in this document

More information

Spájanie tabuliek. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c)

Spájanie tabuliek. Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c) Spájanie tabuliek Jaroslav Porubän, Miroslav Biňas, Milan Nosáľ (c) 2011-2016 Úvod pri normalizácii rozdeľujeme databázu na viacero tabuliek prepojených cudzími kľúčmi SQL umožňuje tabuľky opäť spojiť

More information

Welcome to getting started with Ubuntu Server. This System Administrator Manual. guide to be simple to follow, with step by step instructions

Welcome to getting started with Ubuntu Server. This System Administrator Manual. guide to be simple to follow, with step by step instructions Welcome to getting started with Ubuntu 12.04 Server. This System Administrator Manual guide to be simple to follow, with step by step instructions with screenshots INDEX 1.Installation of Ubuntu 12.04

More information

Perl and R Scripting for Biologists

Perl and R Scripting for Biologists Perl and R Scripting for Biologists Lukas Mueller PLBR 4092 Course overview Linux basics (today) Linux advanced (Aure, next week) Why Linux? Free open source operating system based on UNIX specifications

More information

Introduction. What is Linux? What is the difference between a client and a server?

Introduction. What is Linux? What is the difference between a client and a server? Linux Kung Fu Introduction What is Linux? What is the difference between a client and a server? What is Linux? Linux generally refers to a group of Unix-like free and open-source operating system distributions

More information

GNU/Linux 101. Casey McLaughlin. Research Computing Center Spring Workshop Series 2018

GNU/Linux 101. Casey McLaughlin. Research Computing Center Spring Workshop Series 2018 GNU/Linux 101 Casey McLaughlin Research Computing Center Spring Workshop Series 2018 rccworkshop IC;3df4mu bash-2.1~# man workshop Linux101 RCC Workshop L101 OBJECTIVES - Operating system concepts - Linux

More information

Linux Kung Fu. Stephen James UBNetDef, Spring 2017

Linux Kung Fu. Stephen James UBNetDef, Spring 2017 Linux Kung Fu Stephen James UBNetDef, Spring 2017 Introduction What is Linux? What is the difference between a client and a server? What is Linux? Linux generally refers to a group of Unix-like free and

More information

Spôsoby zistenia ID KEP

Spôsoby zistenia ID KEP Spôsoby zistenia ID KEP ID KEP (kvalifikovaný elektronický podpis) je možné zistiť pomocou napr. ovládacieho panela, prostredíctvom prehliadača Internet Expolrer, Google Chrome alebo Mozilla Firefox. Popstup

More information

*nix Crash Course. Presented by: Virginia Tech Linux / Unix Users Group VTLUUG

*nix Crash Course. Presented by: Virginia Tech Linux / Unix Users Group VTLUUG *nix Crash Course Presented by: Virginia Tech Linux / Unix Users Group VTLUUG Ubuntu LiveCD No information on your hard-drive will be modified. Gives you a working Linux system without having to install

More information

Linux Systems Administration Getting Started with Linux

Linux Systems Administration Getting Started with Linux Linux Systems Administration Getting Started with Linux Network Startup Resource Center www.nsrc.org These materials are licensed under the Creative Commons Attribution-NonCommercial 4.0 International

More information

Introduction: What is Unix?

Introduction: What is Unix? Introduction Introduction: What is Unix? An operating system Developed at AT&T Bell Labs in the 1960 s Command Line Interpreter GUIs (Window systems) are now available Introduction: Unix vs. Linux Unix

More information

System Administration and Networking

System Administration and Networking System Administration and Networking Topics 1. System Administration 1 2. System Administration 2 3. Managing Directories & Files 4. Networking & Integrating Linux with the MS Infrastructure Samba Wireless

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Kisik Jeong (kisik@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating

More information

UNIX. The Very 10 Short Howto for beginners. Soon-Hyung Yook. March 27, Soon-Hyung Yook UNIX March 27, / 29

UNIX. The Very 10 Short Howto for beginners. Soon-Hyung Yook. March 27, Soon-Hyung Yook UNIX March 27, / 29 UNIX The Very 10 Short Howto for beginners Soon-Hyung Yook March 27, 2015 Soon-Hyung Yook UNIX March 27, 2015 1 / 29 Table of Contents 1 History of Unix 2 What is UNIX? 3 What is Linux? 4 How does Unix

More information

Overview LEARN. History of Linux Linux Architecture Linux File System Linux Access Linux Commands File Permission Editors Conclusion and Questions

Overview LEARN. History of Linux Linux Architecture Linux File System Linux Access Linux Commands File Permission Editors Conclusion and Questions Lanka Education and Research Network Linux Architecture, Linux File System, Linux Basic Commands 28 th November 2016 Dilum Samarasinhe () Overview History of Linux Linux Architecture Linux File System

More information

Hands-on Keyboard: Cyber Experiments for Strategists and Policy Makers

Hands-on Keyboard: Cyber Experiments for Strategists and Policy Makers Hands-on Keyboard: Cyber Experiments for Strategists and Policy Makers Review of the Linux File System and Linux Commands 1. Introduction Becoming adept at using the Linux OS requires gaining familiarity

More information

Introduction to Linux. Woo-Yeong Jeong Computer Systems Laboratory Sungkyunkwan University

Introduction to Linux. Woo-Yeong Jeong Computer Systems Laboratory Sungkyunkwan University Introduction to Linux Woo-Yeong Jeong (wooyeong@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating system of a computer What is an

More information

LAB #7 Linux Tutorial

LAB #7 Linux Tutorial Gathering information: LAB #7 Linux Tutorial Find the password file on a Linux box Scenario You have access to a Linux computer. You must find the password file on the computer. Objective Get a listing

More information

Mesačná kontrolná správa

Mesačná kontrolná správa Mesačná kontrolná správa Štrukturálna štúdia mar.18 feb.18 jan.18 dec.17 nov.17 okt.17 sep.17 aug.17 júl.17 jún.17 máj.17 apr.17 mar.17 Internetová populácia SR 12+ 3 904 509 3 802 048 3 870 654 3 830

More information

Introduction to Linux (Part I) BUPT/QMUL 2018/03/14

Introduction to Linux (Part I) BUPT/QMUL 2018/03/14 Introduction to Linux (Part I) BUPT/QMUL 2018/03/14 Contents 1. Background on Linux 2. Starting / Finishing 3. Typing Linux Commands 4. Commands to Use Right Away 5. Linux help continued 2 Contents 6.

More information

Chapter-3. Introduction to Unix: Fundamental Commands

Chapter-3. Introduction to Unix: Fundamental Commands Chapter-3 Introduction to Unix: Fundamental Commands What You Will Learn The fundamental commands of the Unix operating system. Everything told for Unix here is applicable to the Linux operating system

More information

Embedded Linux Systems. Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island

Embedded Linux Systems. Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island Embedded Linux Systems Bin Li Assistant Professor Dept. of Electrical, Computer and Biomedical Engineering University of Rhode Island Generic Embedded Systems Structure User Sensors ADC microcontroller

More information

Manuál k programu FileZilla

Manuál k programu FileZilla Manuál k programu FileZilla EXO TECHNOLOGIES spol. s.r.o. Garbiarska 3 Stará Ľubovňa 064 01 IČO: 36 485 161 IČ DPH: SK2020004503 support@exohosting.sk www.exohosting.sk 1 Úvod EXO HOSTING tím pre Vás pripravil

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Dong-Yun Lee (dylee@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating

More information

Mesačná kontrolná správa

Mesačná kontrolná správa Mesačná kontrolná správa Štrukturálna štúdia dec.16 nov.16 okt.16 sep.16 aug.16 júl.16 jún.16 máj.16 apr.16 mar.16 feb.16 jan.16 Internetová populácia SR 12+ 3 728 988 3 718 495 3 718 802 3 711 581 3 700

More information

Databázy (1) Prednáška 11. Alexander Šimko

Databázy (1) Prednáška 11. Alexander Šimko Databázy (1) Prednáška 11 Alexander Šimko simko@fmph.uniba.sk Contents I Aktualizovanie štruktúry databázy Section 1 Aktualizovanie štruktúry databázy Aktualizácia štruktúry databázy Štruktúra databázy

More information

1 Komplexný príklad využitia OOP

1 Komplexný príklad využitia OOP 1 Komplexný príklad využitia OOP Najčastejším využitím webových aplikácií je komunikácia s databázovým systémom. Komplexný príklad je preto orientovaný práve do tejto oblasti. Od verzie PHP 5 je jeho domovskou

More information

Student Remote Login Procedure (see picture below): 1. Start SSH Secure Shell 2. Click the computer icon (4 th on the toolbar) 3.

Student Remote Login Procedure (see picture below): 1. Start SSH Secure Shell 2. Click the computer icon (4 th on the toolbar) 3. Student Remote Login Procedure (see picture below): 1. Start SSH Secure Shell 2. Click the computer icon (4 th on the toolbar) 3. Enter stargate.ncc.edu in the text field labeled Host Name: 4. Enter the

More information

Aplikačný dizajn manuál

Aplikačný dizajn manuál Aplikačný dizajn manuál Úvod Aplikačný dizajn manuál je súbor pravidiel vizuálnej komunikácie. Dodržiavaním jednotných štandardov, aplikácií loga, písma a farieb pri prezentácii sa vytvára jednotný dizajn,

More information

(a) About Unix. History

(a) About Unix. History Part 1: The Unix Operating System (a) About Unix History First roots in the Bell Laboratories, early 60s Kernel rewrite in C by Ritchie / Thompson in the early 70s Source code licenses for Universities

More information

Anycast. Ľubor Jurena CEO Michal Kolárik System Administrator

Anycast. Ľubor Jurena CEO Michal Kolárik System Administrator Anycast Ľubor Jurena CEO jurena@skhosting.eu Michal Kolárik System Administrator kolarik@skhosting.eu O nás Registrátor Webhosting Serverové riešenia Správa infraštruktúry Všetko sa dá :-) Index Čo je

More information

Operating Systems Lab 1 (Users, Groups, and Security)

Operating Systems Lab 1 (Users, Groups, and Security) Operating Systems Lab 1 (Users, Groups, and Security) Overview This chapter covers the most common commands related to users, groups, and security. It will also discuss topics like account creation/deletion,

More information

INTRODUCTION TO LINUX

INTRODUCTION TO LINUX INTRODUCTION TO LINUX REALLY SHORT HISTORY Before GNU/Linux there were DOS, MAC and UNIX. All systems were proprietary. The GNU project started in the early 80s by Richard Stallman Goal to make a free

More information

Unix Handouts. Shantanu N Kulkarni

Unix Handouts. Shantanu N Kulkarni Unix Handouts Shantanu N Kulkarni Abstract These handouts are meant to be used as a study aid during my class. They are neither complete nor sincerely accurate. The idea is that the participants should

More information

The kernel is the low-level software that manages hardware, multitasks programs, etc.

The kernel is the low-level software that manages hardware, multitasks programs, etc. November 2011 1 Why Use Linux? Save Money Initial purchase and maintenance Resume Linux is used by MANY organizations More choices Tons of Linux operating systems November 2011 2 What is Linux? 1. Contains

More information

Linux Kung Fu. Ross Ventresca UBNetDef, Fall 2017

Linux Kung Fu. Ross Ventresca UBNetDef, Fall 2017 Linux Kung Fu Ross Ventresca UBNetDef, Fall 2017 GOTO: https://apps.ubnetdef.org/ What is Linux? Linux generally refers to a group of Unix-like free and open source operating system distributions built

More information

Exam Linux-Praxis - 1 ( From )

Exam Linux-Praxis - 1 ( From  ) Exam Linux-Praxis - 1 ( From http://www.linux-praxis.de ) (1)Which of the following commands results in mailing the content of the current directory to Bob? A. mail Bob < ls B. ls > mail Bob C. ls mail

More information

D.Signer prostriedok pre vytváranie zaručeného elektronického podpisu. Inštalačná príručka

D.Signer prostriedok pre vytváranie zaručeného elektronického podpisu. Inštalačná príručka D.Signer prostriedok pre vytváranie zaručeného elektronického podpisu Inštalačná príručka Obsah 1 Predpoklady pre inštaláciu D.Signer... 3 1.1 Inštalácia.NET Framework... 3 1.1.1 Windows 8, 8.1... 4 1.1.2

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Mukesh Pund Principal Scientist, NISCAIR, New Delhi, India History In 1969, a team of developers developed a new operating system called Unix which was written using C Linus Torvalds,

More information

List of Linux Commands in an IPm

List of Linux Commands in an IPm List of Linux Commands in an IPm Directory structure for Executables bin: ash cpio false ln mount rm tar zcat busybox date getopt login mv rmdir touch cat dd grep ls perl sed true chgrp df gunzip mkdir

More information

Computer Systems and Architecture

Computer Systems and Architecture Computer Systems and Architecture Introduction to UNIX Stephen Pauwels University of Antwerp October 2, 2015 Outline What is Unix? Getting started Streams Exercises UNIX Operating system Servers, desktops,

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Phil Mercurio The Scripps Research Institute mercurio@scripps.edu 1 Session Overview What is Linux Shells & Windows The Linux File System Assorted Commands 2 What Is Linux? Linux

More information

Introduction of Linux

Introduction of Linux Introduction of Linux 阳 oslab2018_class1@163.com 寅 oslab2018_class2@163.com PART I Brief Introduction Basic Conceptions & Environment Install & Configure a Virtual Machine Basic Commands PART II Shell

More information

Linux for Beginners. Windows users should download putty or bitvise:

Linux for Beginners. Windows users should download putty or bitvise: Linux for Beginners Windows users should download putty or bitvise: https://putty.org/ Brief History UNIX (1969) written in PDP-7 assembly, not portable, and designed for programmers as a reaction by Bell

More information

Riešenia a technológie pre jednotnú správu používateľov

Riešenia a technológie pre jednotnú správu používateľov Riešenia a technológie pre jednotnú správu používateľov Radovan Semančík Agenda Úvod: Identity Crisis Technológie správy používateľov Postup nasadenia Záver Súčasný stav IT Security Nekonzistentné bezpečnostné

More information

RG-MACC_2.0 Installation Manual

RG-MACC_2.0 Installation Manual RG-MACC_2.0 Installation Manual Ruijie Networks Co., Ltd all rights reserved 1 Copyright Clarify Copyright ownership belongs to Ruijie, shall not be reproduced, copied, or used in other ways without permission.

More information

CS246 Spring14 Programming Paradigm Notes on Linux

CS246 Spring14 Programming Paradigm Notes on Linux 1 Unix History 1965: Researchers from Bell Labs and other organizations begin work on Multics, a state-of-the-art interactive, multi-user operating system. 1969: Bell Labs researchers, losing hope for

More information

National University of Computer and Emerging Sciences Operating System Lab - 02 Lab Manual

National University of Computer and Emerging Sciences Operating System Lab - 02 Lab Manual National University of Computer and Emerging Sciences Operating System Lab - 02 Lab Manual Objective This lab is all about running commands in Ubuntu Terminal and compiling C program in Ubuntu Table of

More information

Lecture 02: Linux Command Line

Lecture 02: Linux Command Line BI296: Linux and Shell Programming Lecture 02: Linux Command Line Maoying,Wu ricket.woo@gmail.com Dept. of Bioinformatics & Biostatistics Shanghai Jiao Tong University Spring, 2017 Quick Recaps Decimal/Binary/Octal/Hexadecimal

More information

Recipient Configuration. Štefan Pataky MCP, MCTS, MCITP

Recipient Configuration. Štefan Pataky MCP, MCTS, MCITP Recipient Configuration Štefan Pataky MCP, MCTS, MCITP Agenda Mailbox Mail Contact Distribution Groups Disconnected Mailbox Mailbox (vytvorenie nového účtu) Exchange Management Console New User Exchange

More information

Freescale FAE75 Training Genesi Pegasos II LinuxTraining. Maurie Ommerman June 10, 2004

Freescale FAE75 Training Genesi Pegasos II LinuxTraining. Maurie Ommerman June 10, 2004 Freescale FAE75 Training Genesi Pegasos II LinuxTraining Maurie Ommerman June 10, 2004 FAE75 Part 3 Debian Linux Maurie Ommerman June 10, 2004 Open Firmware boot script Boot Options Upon PowerUP, this

More information

Obsah. SOA REST REST princípy REST výhody prest. Otázky

Obsah. SOA REST REST princípy REST výhody prest. Otázky REST Peter Rybár Obsah SOA REST REST princípy REST výhody prest Otázky SOA implementácie WEB (1990) CORBA (1991) XML-RPC (1998) WS-* (1998) SOAP RPC/literal SOAP Document/literal (2001) REST (2000) SOA

More information

Linux Session Part I. Kesavan M

Linux Session Part I. Kesavan M Linux Session Part I Kesavan M 180976 Overview What is an Operating System? UNIX History Parts of the UNIX OS Flavors of UNIX Before Linux GNU project Beginning of Linux Linux Today Linux - free software

More information

Introduction to Linux

Introduction to Linux Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA Sanghoon Han(sanghoon.han@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Announcement (1) Please come

More information

IY5512: Computer Security ( Operating Systems ) Unix and Linux Security

IY5512: Computer Security ( Operating Systems ) Unix and Linux Security Slide 1 IY5512: Computer Security ( Operating Systems ) Unix and Linux Security Antony Stone Slide 2 Unix and Linux Security The Unix TM and Linux TM Operating Systems Open Source software User Accounts

More information

Topics. Installation Basics of Using GNU/ Linux Administration Tools

Topics. Installation Basics of Using GNU/ Linux Administration Tools GNU/ Linux Basics Topics Installation Basics of Using GNU/ Linux Administration Tools Installation Installing Using the GUI Disc Partitioning Allocation of swap space Selection of packages to install Configuring

More information

Computer Systems and Architecture

Computer Systems and Architecture Computer Systems and Architecture Stephen Pauwels Computer Systems Academic Year 2018-2019 Overview of the Semester UNIX Introductie Regular Expressions Scripting Data Representation Integers, Fixed point,

More information

REPORT DESIGNER 1 VYTVORENIE A ÚPRAVA FORMULÁRA. úprava formulárov v Money S4 / Money S Vytvorenie formulára

REPORT DESIGNER 1 VYTVORENIE A ÚPRAVA FORMULÁRA. úprava formulárov v Money S4 / Money S Vytvorenie formulára REPORT DESIGNER úprava formulárov v Money S4 / Money S5 Informačný systém Money S4/S5 umožňuje upraviť tlačové zostavy tak, aby plne vyhovovali potrebám používateľa. Na úpravu tlačových zostáv slúži doplnkový

More information

Unix System Architecture, File System, and Shell Commands

Unix System Architecture, File System, and Shell Commands Unix System Architecture, File System, and Shell Commands Prof. (Dr.) K.R. Chowdhary, Director COE Email: kr.chowdhary@iitj.ac.in webpage: http://www.krchowdhary.com JIET College of Engineering August

More information

Presented by Bill Genske Gary Jackson

Presented by Bill Genske Gary Jackson Quintessential School Systems Session C Linux Presented by Bill Genske Gary Jackson Copyright Quintessential School Systems, 2009 All Rights Reserved 867 American Street --- Second Floor --- San Carlos,

More information

EECS2301. Lab 1 Winter 2016

EECS2301. Lab 1 Winter 2016 EECS2301 Lab 1 Winter 2016 Lab Objectives In this lab, you will be introduced to the Linux operating system. The basic commands will be presented in this lab. By the end of you alb, you will be asked to

More information

Správa používateľov Zabezpečenie prístupu

Správa používateľov Zabezpečenie prístupu Správa používateľov Zabezpečenie prístupu k počítaču Proces zavádzania operačného systému Spôsob prihlasovania Vytváranie a mazanie používateľov Zmenu informácií Nastavovanie skupín používateľov Nastavovanie

More information

Linux Essentials. Programming and Data Structures Lab M Tech CS First Year, First Semester

Linux Essentials. Programming and Data Structures Lab M Tech CS First Year, First Semester Linux Essentials Programming and Data Structures Lab M Tech CS First Year, First Semester Adapted from PDS Lab 2014 and 2015 Login, Logout, Password $ ssh mtc16xx@192.168.---.--- $ ssh X mtc16xx@192.168.---.---

More information

LPI Number: Passing Score: 800 Time Limit: 120 min File Version: 5. LPI Questions & Answers

LPI Number: Passing Score: 800 Time Limit: 120 min File Version: 5. LPI Questions & Answers LPI-010-150 Number: 010-150 Passing Score: 800 Time Limit: 120 min File Version: 5 http://www.gratisexam.com/ LPI 010-150 Questions & Answers Linux Essentials Certificate Exam, version 1.5 Version: 5.0

More information

Lecture 3. Unix. Question? b. The world s best restaurant. c. Being in the top three happiest countries in the world.

Lecture 3. Unix. Question? b. The world s best restaurant. c. Being in the top three happiest countries in the world. Lecture 3 Unix Question? Denmark is famous for? a. LEGO. b. The world s best restaurant. c. Being in the top three happiest countries in the world. d. Having the highest taxes in Europe (57%). e. All of

More information

OPERATING SYSTEMS LINUX

OPERATING SYSTEMS LINUX OPERATING SYSTEMS LINUX Božo Krstajić, PhD, University of Montenegro Podgorica bozok@cg.ac.yu Process management Linux operating systems work with processes. Basically a process consists of program code

More information

GNU/Linux: An Essential Guide for Students Undertaking BLOSSOM

GNU/Linux: An Essential Guide for Students Undertaking BLOSSOM Copyright: The development of this document is funded by Higher Education of Academy. Permission is granted to copy, distribute and /or modify this document under a license compliant with the Creative

More information

Commands are in black

Commands are in black Starting From the Shell Prompt (Terminal) Commands are in black / +--------+---------+-------+---------+---------+------ +------ +------ +------ +------ +------ +-- Bin boot dev etc home media sbin bin

More information

CS197U: A Hands on Introduction to Unix

CS197U: A Hands on Introduction to Unix CS197U: A Hands on Introduction to Unix Lecture 11: WWW and Wrap up Tian Guo University of Massachusetts Amherst CICS 1 Reminders Assignment 4 was graded and scores on Moodle Assignment 5 was due and you

More information

Introduction to Unix: Fundamental Commands

Introduction to Unix: Fundamental Commands Introduction to Unix: Fundamental Commands Ricky Patterson UVA Library Based on slides from Turgut Yilmaz Istanbul Teknik University 1 What We Will Learn The fundamental commands of the Unix operating

More information

CSE 303 Lecture 2. Introduction to bash shell. read Linux Pocket Guide pp , 58-59, 60, 65-70, 71-72, 77-80

CSE 303 Lecture 2. Introduction to bash shell. read Linux Pocket Guide pp , 58-59, 60, 65-70, 71-72, 77-80 CSE 303 Lecture 2 Introduction to bash shell read Linux Pocket Guide pp. 37-46, 58-59, 60, 65-70, 71-72, 77-80 slides created by Marty Stepp http://www.cs.washington.edu/303/ 1 Unix file system structure

More information

Basic Linux Command Line Interface Guide

Basic Linux Command Line Interface Guide This basic Linux Command-Line Interface (CLI) Guide provides a general explanation of commonly used Bash shell commands for the Barracuda NG Firewall. You can access the command-line interface by connecting

More information

CISC 220 fall 2011, set 1: Linux basics

CISC 220 fall 2011, set 1: Linux basics CISC 220: System-Level Programming instructor: Margaret Lamb e-mail: malamb@cs.queensu.ca office: Goodwin 554 office phone: 533-6059 (internal extension 36059) office hours: Tues/Wed/Thurs 2-3 (this week

More information

Course 144 Supplementary Materials. UNIX Fundamentals

Course 144 Supplementary Materials. UNIX Fundamentals Course 144 Supplementary Materials UNIX Fundamentals 1 Background to UNIX Command Fundamentals This appendix provides a overview of critical commands and concepts Prerequisite knowledge attendees should

More information

Programovanie v jazyku Python. Michal Kvasnica

Programovanie v jazyku Python. Michal Kvasnica Programovanie v jazyku Python Michal Kvasnica Organizačné detaily Prednášky aj cvičenia v 638 Povinná účasť na cvičeniach Hodnotenie: priebežné odovzdávanie zadaní (40% známky) záverečný projekt na skúške

More information

Introduction To Linux. Rob Thomas - ACRC

Introduction To Linux. Rob Thomas - ACRC Introduction To Linux Rob Thomas - ACRC What Is Linux A free Operating System based on UNIX (TM) An operating system originating at Bell Labs. circa 1969 in the USA More of this later... Why Linux? Free

More information

System Administration

System Administration Süsteemihaldus MTAT.08.021 System Administration File system basics UNIX shell basics 1/23 2/23 3/23 4/23 5/23 6/23 System Root Mount points User Profiles /home /boot /dev/sda Boot loader files and Linux

More information

Filesystem Hierarchy Operating systems I800 Edmund Laugasson

Filesystem Hierarchy Operating systems I800 Edmund Laugasson Filesystem Hierarchy Operating systems I800 Edmund Laugasson edmund.laugasson@itcollege.ee There has been used materials from Margus Ernits, Katrin Loodus when creating current slides. Current document

More information

Introduction to remote command line Linux. Research Computing Team University of Birmingham

Introduction to remote command line Linux. Research Computing Team University of Birmingham Introduction to remote command line Linux Research Computing Team University of Birmingham Linux/UNIX/BSD/OSX/what? v All different v UNIX is the oldest, mostly now commercial only in large environments

More information

UNIX System Programming Lecture 3: BASH Programming

UNIX System Programming Lecture 3: BASH Programming UNIX System Programming Outline Filesystems Redirection Shell Programming Reference BLP: Chapter 2 BFAQ: Bash FAQ BMAN: Bash man page BPRI: Bash Programming Introduction BABS: Advanced Bash Scripting Guide

More information

Ochrana proti DDoS za použitia open-source software. Katarína Ďurechová

Ochrana proti DDoS za použitia open-source software. Katarína Ďurechová Ochrana proti DDoS za použitia open-source software Katarína Ďurechová katarina.durechova@nic.cz 30.11.2013 Distributed Denial of Service odopretie služby dosiahnutím limitu pripojenia sieťovej karty CPU

More information

ECE 471 Embedded Systems Lecture 10

ECE 471 Embedded Systems Lecture 10 ECE 471 Embedded Systems Lecture 10 Vince Weaver http://www.eece.maine.edu/ vweaver vincent.weaver@maine.edu 3 October 2013 Announcements Homework #2 has been assigned. extended until the 10th. The due

More information

Some Ubuntu Practice...

Some Ubuntu Practice... Some Ubuntu Practice... SANOG 10 August 29 New Delhi, India 1. Get used to using sudo 2. Create an inst account 3. Learn how to install software 4. Install gcc and make 5. Learn how to control services

More information

GNU/Linux Course Lesson 1. Puria Nafisi

GNU/Linux Course Lesson 1. Puria Nafisi GNU/Linux Course Lesson 1 Puria Nafisi Azizi @pna http://netstudent.polito.it Netstudent is an students volunteer association within the Politecnico di Torino. Is build of different people and students

More information

INSTITUTE OF AGA LINUX LPI 5TH STAGE LECTURER: NIYAZ M. SALIH

INSTITUTE OF AGA LINUX LPI 5TH STAGE LECTURER: NIYAZ M. SALIH INSTITUTE OF AGA LINUX LPI 5TH STAGE LECTURER: NIYAZ M. SALIH Chapter 1. Operating System Operating System: An Operating System, or OS, is low-level software that enables a user and higher-level application

More information

Embedded System Design

Embedded System Design Embedded System Design Lecture 10 Jaeyong Chung Systems-on-Chips (SoC) Laboratory Incheon National University Environment Variables Environment variables are a set of dynamic named values that can affect

More information

RG-MACC-BASE_v2.01. Installation Guide

RG-MACC-BASE_v2.01. Installation Guide RG-MACC-BASE_v2.01 Preface Thank you for using our products. Audience This manual is intended for: Network engineers Technical support and servicing engineers Network administrators Symbols Important information.

More information

UNIVERSITY OF BOLTON CREATIVE TECHNOLOGIES. BSc (Hons) COMPUTER NETWORKS AND SECURITY SEMESTER ONE EXAMINATION 2014/2015 UNIX MODULE NO: CPU5003

UNIVERSITY OF BOLTON CREATIVE TECHNOLOGIES. BSc (Hons) COMPUTER NETWORKS AND SECURITY SEMESTER ONE EXAMINATION 2014/2015 UNIX MODULE NO: CPU5003 [CRT09] UNIVERSITY OF BOLTON CREATIVE TECHNOLOGIES BSc (Hons) COMPUTER NETWORKS AND SECURITY SEMESTER ONE EXAMINATION 2014/2015 MODULE NO: CPU5003 Date: Wednesday 21 st January 2015 Time: 10:00 13:00 INSTRUCTIONS

More information

Basic Linux Command Line Interface Guide

Basic Linux Command Line Interface Guide This basic Linux Command-Line Interface (CLI) Guide provides a general explanation of commonly used Bash shell commands for the Barracuda NG Firewall. You can access the command-line interface by connecting

More information

Introduction to Linux Workshop 1

Introduction to Linux Workshop 1 Introduction to Linux Workshop 1 The George Washington University SEAS Computing Facility Created by Jason Hurlburt, Hadi Mohammadi, Marco Suarez hurlburj@gwu.edu Logging In The lab computers will authenticate

More information

Introduction to Linux

Introduction to Linux Introduction to Linux University of Bristol - Advance Computing Research Centre 1 / 47 Operating Systems Program running all the time Interfaces between other programs and hardware Provides abstractions

More information

EECS Software Tools. Lab 2 Tutorial: Introduction to UNIX/Linux. Tilemachos Pechlivanoglou

EECS Software Tools. Lab 2 Tutorial: Introduction to UNIX/Linux. Tilemachos Pechlivanoglou EECS 2031 - Software Tools Lab 2 Tutorial: Introduction to UNIX/Linux Tilemachos Pechlivanoglou (tipech@eecs.yorku.ca) Sep 22 & 25, 2017 Material marked with will be in your exams Sep 22 & 25, 2017 Introduction

More information

Unix Workshop Aug 2014

Unix Workshop Aug 2014 Unix Workshop 2014 5 Aug 2014 What is Unix Multitasking, multiuser operating system Often the OS of choice for large servers, large clusters Unix Around You You re probably familiar with these: Linux Solaris

More information

File System Hierarchy Standard (FHS)

File System Hierarchy Standard (FHS) File System Hierarchy Standard (FHS) Filesystem hierarchy standard describes directory structure and its content in Unix and Unix like operating system. It explains where files and directories should be

More information