Prostredie Linuxu
- Viac uzivatelske (multiuser)
- uzivatelia, konta, hesla
- domovsky adresar
- skupiny uzivatelov
- pristupove prava
- super-uzivatel, ktoreho login je slovo "root".
- Viac ulohove (multitasking)
- processy a ich identifikacia PID
- rodiny processov (otec -> syn)
- prostredie processu
- vstupne parametre
- premenne prostredia processu
- standardne komunikacne 'subory' == stdin, stdout, stderr
- navratove kody processu ('vsetko v poriadku' t.j. 0 alebo chybovy kod)
- Jednotny suborovy system (hierarchia suborov, attributy suborov, specialne subory).
Typicka organizacia suborov pod Unixom:
/ (hlavny adresar obsahujuci vsetky subory)
|
+- tmp (docasne subory, kazdy ma pravo zapisovat)
|
+- bin (binarne subory, vykonatelne subory systemu)
|
+- dev (specialne subory, hardwarove zariadenie, "devices")
| |
| +- hda0 , ... (pevne disky)
| |
| +- fd0 , ... (diskety)
| |
| ...
| |
| +- null (cierna diera, co sa tam zapise, zmizne)
| |
| +- zero (nulovy subor, mozte z neho precitat lubovolne vela nul)
| |
| +- random (nahodny vstup,mozte citat nahodne cisla,existuje len na Linuxe)
|
+- etc (rozne, zvacsa subory konfiguracie daneho systemu)
|
+- var (rozne, meniace sa subory, konfiguracie, log-y (protocoly) o behu systemu)
|
+- lib (zvacsa kniznice systemu)
|
+- mnt (adresar, kam sa zvycajne pripajaju ine disky)
| |
| +- hda1
| |
| +- hdb1
| |
| +- floppy
| |
| +- cdrom
| ...
|
+- usr (adresar, kam sa ukladaju subory potrebne pre uzivatelov)
| |
| +-bin (binarne programy)
| |
| +-lib (kniznice pouzivane uzivatelmi)
| |
| +-include (.h subory pre kompilator C)
| |
| +-local (subory instalovane lokalne (len na tomto pocitaci))
| ...
|
+- home (domovske adresare uzivatelov)
|
+- jozo
|
+- fero
|
+- user
...
|
Zopar dalsich prikazov
| chmod | kod subor | zmen pristupove prava k suboru subor . Kod ma tvar bud [ugoa][+-][rwx...] alebo priamo oktalovy kod pristupoveho prava. |
| top | Periodicky vypis beziacich procesov v pocitaci zoradeny podla spotreby CPU. Periodicky vypis sa ukonci stlacenim klavesy 'q'. | |
| kill -9 | cisla processov | Ukonci processy s danymi cislami PID. |
| which | prikaz | Vypise ktory subor sa spusti pri zadani prikazu "prikaz". |
| whoami | prikaz | Vypise login pod ktorym ste prihlaseni. |
| time | prikaz a jeho parametre | Spusti prikaz s danymi parametrami a po jeho skonceni vypise ako dlho dany prikaz bezal. Vypise skutocnu dlzku behu a aj kolko z toho aktualne spotrebovaval cas CPU. |
| uniq | Citaj utriedeny standardny vstup a vyhod z neho viacnasobne riadky . | |
| uniq -d | Citaj utriedeny standardny vstup a vypis len opakujuce sa riadky. | |
| uniq -u | Citaj utriedeny standardny vstup a vypis len neopakujuce sa riadky. | |
| xargs | prikaz | Tento prikaz cita svoj standardny vstup a interpretuje ho ako parametre pre prikaz. Prikaz s tymito parametrami sa nasledne vyvola. Ak je na standardnom vstupe viac parametrov ako maximalne dovoleny pocet, prikaz sa vyvola viackrat. |
Cvicenia:
1.) Zistite, kde sa nachadza spustitelny subor, ktory sa vykona pri zadani prikazu ls 2.) Vytvorte jeden zoznam mien suborov utriedeny podla abecedy, ktory bude obsahovat mena suborov z adresarov /bin a /usr/bin. 3.) pomocou prikazu uniq (a sort) vypiste, ake mena suborov sa nachadzaju sucasne aj v adresari /bin aj v adresari /usr/bin. 4.) Zistite, ktory z dvoch suborov "touch" sa vykona ked zadate prikaz "touch". 5.) Vypiste tie mena suborov z adresara /bin, ktore sa nenachadzaju v /usr/bin. 6.) Vypiste len tie mena suborov z adresara /bin a /usr/bin, ktore sa nenachadzaju sucasne v oboch tychto adresaroch. 7.) Predpokladajme, ze mame dva textove subory a.txt a b.txt. Napiste prikaz, ktory vypise slova nachadzajuce sa v oboch suboroch. Na testovanie mozte pouzit napriklad subory vytvorene prikazmi: echo "Ja som subor cislo jeden" > a.txt echo "Ja som subor cislo dva" > b.txt 8.) Pomocou prikazu ps zistite PID vasho prehliadaca a pomocou prikazu kill ho ukoncite. |
