============================ STRANA 1 =========================== T E C H N I C K A U N I V E R Z I T A Z V O L E N Katedra vypoctovej techniky a automatizacie. Drevarska fakulta. Masarykova 24 960 53 Zvolen Text prednasky "Operacne systemy uzlovych pocitacov" Vypracoval: Ing. Miroslav Puskar E-mail : pus@uvt.tuzvo.sk Telefon: 0855 - 635 klapka 508, 251, 235 Fax : 0855 - 21030 ============================ STRANA 2 =========================== OBSAH 1. Uvod. 2. Charakteristika systemu. 3. Struktura operacneho systemu Unix. 3.1. Suborova struktura. 3.2. Vstupno-vystupne operacie. 3.3. Procesy. 4. Princip prace s operacnym systemom. 5. Niektore vybrane prikazy. 6. Prostriedky komunikacie medzi pouzivatelmi. 7. Prostriedky pre spracovanie textov. 8. Zaver. 9. Literatura. ============================ STRANA 3 =========================== 1. Uvod Unix je vykonny operacny system nasadeny na roznych typoch technickych prostriedkov. Existuje len malo typov pocitacov, na ktorych nie je mozne pracovat s tymto operacnym systemom. Vo svete zaznamenava znacne rozsirenie a popularitu v suvislosti s rozvojom pocitacovych sieti. Vyzaduje vykonne a spolahlive technicke vybavenie. Vznikol na prelome 60. a 70. rokov. Prvu verziu tohto systemu vyvinuli Ritchie a Thompson pre pocitace PDP firmy DEC. Vyvoj tohoto systemu pokracoval vo viacerych vetvach. Na zaklade toho vznikli rozne modifikacie a klony zakladnej verzie v zavislosti od toho, pre ake pouzitie a pre ake technicke vybavenie boli navrhovane. Schematicky vyvoj operacneho systemu Unix aj nazvy niektorych klonov znazornuje obrazok prebrany z casopisu PC WORLD cislo 4/92. verzie 2.x - 3.2 -------------- -------------- -------------- -------------- |Verzia 7 |-|System III |-| System V |---|System V 4.0| -------------- -------------- -------------- -------------- | | | | --------- ----------------- | |-| VENIX | |Microport UNIX | | | --------- | AIX, HP/UX | | | --------- | a ine firemne | | |-| XENIX |---------------| systemy |--------| | --------- | SCO XENIX | | | --------- | SCO UNIX | | |-|BSD 2.x| |Interactiv/Unix| | | --------- ----------------- | | --------- ------------------ | --|BSD 4.x|-------|ULTRIX (BSD 4.3)|---------------- --------- | ------------------ | | ------------------ | |-| SunOS |--- | ------------------ | ------------------ --| Mach | ------------------ 2. Charakteristika systemu Unix je multiuzivatelsky a multiprogramovy operacny system vseobecneho pouzitia pracujuci v rezime zdielania casu (time sharing). To znamena, ze s nim moze pracovat sucasne viac pouzivatelov, ktori mozu mat sucasne spustenych viac programov. Je zalozeny na interaktivnej praci pouzivatelov v systeme, avsak ma aj prostriedky podporujuce davkove spracovanie. Pri praci s pocitacom vybavenym jednopouzivatelskym operacnym systemom (napr. MS DOS) ma pouzivatel sam k dispozicii vsetky prostriedky poskytovane systemom (napr. cas procesora, kapacita diskov, tlaciaren). Pri viacpouzivatelskom systeme operacny system zabezpecuje, ze prostriedky systemu su sucasne vyuzivane viacerymi pouzivatelmi. ============================ STRANA 4 =========================== Jednopouzivatelsky Multipouzivatelsky system system ------------ ----------- | POCITAC | | POCITAC | ------------ ----------- | | ------------ ----------- | OPERACNY | |OPERACNY | | SYSTEM | | SYSTEM | ------------ ----------- | | | | | ------------ --------------- | | -------------------- |POUZIVATEL| | ----- --------- | ------------ | | | | ------------ ------------ ------------ ------------ |POUZIVATEL| |POUZIVATEL| |POUZIVATEL| |POUZIVATEL| ------------ ------------ ------------ ------------ 3. Struktura operacneho systemu Unix Strukturu operacneho systemu je mozne rozclenit do jednotlivych vrstiev pricom kazda z vrstiev zabezpecuje plnenie specifickych uloh. Zakladom je tzv.jadro operacneho systemu, ktore zabezpecuje ovladanie technickeho vybavenia pocitaca. Vrstvy systemovych volani a kniznice funkcii zabezpecuju vykonavanie casto sa opakujucich a standardnych uloh a uloh suvisiacich s pracou jadra. Vrstva systemovych programov v podstate zabezpecuje vykonavanie prikazov operacneho systemu. Spolocne vsetky tieto vrstvy ako celok zabezpecuju ovladanie procesov, pracu so suborovou strukturou a vstupno-vystupne operacie. SUBOROVA VST./VYST. PROCESY STRUKTURA OPERACIE | | | ---------------------------- | S Y S T E M O V E | | P R O G R A M Y | | ------------------------ | | | S y s t e m o v e | | | | v o l a n i a | | | | -------------------- | | | | | J A D R O O S | | | | | | ################ | | | | |-| # HARDWARE # |-| | | | | ################ | | | | | -------------------- | | | | K n i z n i c a | | | | f u n k c i i | | | ------------------------ | ---------------------------- 3.1. Suborova struktura Suborova struktura systemu je tvorena tromi typmi suborov: obycajne subory adresare specialne subory Obycajny subor - postupnost udajov bez presne definovanej vnutornej struktury podporovanej systemom Obycajne subory mozu byt: ============================ STRANA 5 =========================== - textove - obsah je priamo vypisatelny na obrazovku (programy v zdrojovom tvare, prikazove procedury, textove udaje) - binarne - nie je mozny priamy vypis, alebo nema vyznam (vykonatelne programy, binarne udaje) Adresar - subor, ktory ma pevne definovanu strukturu podporovanu systemom Specialny subor- subor pre zabezpecenie vstupno-vystupnych operacii Adresare vytvaraju hierarchicku stromovu strukturu. Zaklad tvori hlavny adresar, "root" adresar, oznacuje sa "/" (znak lomitko). Obsahuje niekolko standardnych podadresarov. /etc subory pre spravu systemu /bin systemove programy /dev specialne subory pre zabezpecenie vstupno/vystupnych operacii /lib systemova kniznica /tmp docasne a pracovne subory systemu /usr podadresare jednotlivych pouzivatelov /usr/bin menej pouzivane systemove programy Uplna specifikacia suboru: cesta/meno_suboru Cesta je tvorena postupnostou mien adresarov oddelenych lomitkami oznacujucich cestu k suboru z hlavneho alebo aktualneho adresara. Pravidla pre tvorbu mena adresara su obdobne ako pre meno suboru. Meno suboru je tvorene retazcom ASCII znakov, ktoreho maximalna dlzka zavisi od typu operacneho systemu, pritom je rozdiel medzi malymi a velkymi pismenami. Nedoporucuje sa pouzitie niektorych specialnych znakov (*,?,:,|,!,&,^ a podobne) pretoze moze to sposobovat problemy pri specifikacii suboru, ale je to teoreticky aj prakticky mozne. Pri specifikacii je mozne pouzivat tzv. expanzne znaky : * nahradza lubovolny aj prazdny retazec ? nahradza jeden lubovolny znak [zoznam_znakov] nahradza jeden znak z uvedeneho zoznamu znakov Priklad: text Text TEXT sprava.txt meranie.dat udaje.dat udaje.ddt program_pre_vypocet_priemeru.pas namerane.udaje vzorovy_text (text, Text, TEXT su rozne mena suborov !) *.dat = meranie.dat, udaje.dat udaje.??t = udaje.dat, udaje.ddt [t,T]ext = text, Text Ochrana udajov - pristupove prava Z hladiska pristupu k suboru existuju tri skupiny (triedy) pouzivatelov: vlastnik (owner) skupina (group) ostatni (world) Pre kazdu triedu pouzivatelov su definovane tri typy pristupov: r (Read ) povolenie citania obsahu suboru w (Write ) povolenia zapisu do suboru x (eXecute) povolenie spustenia suboru pokial ide o subor v spustitelnom tvare Subory v spustitelnom tvare su: - skompilovane (prelozene) a zostavene programy - prikazove procedury ============================ STRANA 6 =========================== 3.2. Vstupno-vystupne operacie. Vsetky zariadenia existujuce v ramci pocitacoveho systemu su v operacnom systeme Unix pristupne cez specialne subory. Vystup udajov na zariadenie je realizovany zapisom do specialneho suboru, vstup udajov je realizovany citanim obsahu tohoto suboru. 3.3. Procesy (Proces - zakonity priebeh,postup diania, vyvinu a podobne) Cinnost operacneho systemu je mnozstvo vzajomne posobiacich procesov. Proces je aktivita pocitacoveho systemu riadena pomocou instrukcii, teda programom. V ramci pocitacoveho systemu procesy spolupracuju, superia o systemove prostriedky (cas procesora, pamat, periferie ...), vymienaju si udaje. Proces vznika jeho aktivovanim. Operacny system Unix poskytuje tri zakladne formy aktivacie procesov: a) Interaktivne spustenie procesu z pouzivatelskeho rozhrania (Napriklad zadanie nejakeho prikazu = spustenie systemoveho programu) b) Neinteraktivne spustenie procesu z pouzivatelskeho rozhrania prostrednictvom prikazovej procedury c) Spustenie noveho procesu z ineho existujuceho procesu. Systemove a pouzivatelske programy Programy vo vseobecnosti su subory v spustitelnom tvare. Mozno ich rozdelit na dve skupiny: - systemove - tvoria sucast operacneho systemu - pouzivatelske - vytvorene samotnymi pouzivatelmi Systemove programy aktivuju procesy, ktore zabezpecuju vykonanie sluzieb pozadovanych od operacneho systemu. Pouzivatelske programy aktivuju procesy zabezpecujuce vykonanie sluzieb, pre ktore boli vytvorene. Zvycajne tiez vyuzivaju sluzby vrstvy systemovych programov a vrstiev systemovych volani a kniznice funkcii. Zakladna filozofia cinnosti systemovych programov spociva v tom, ze kazdy program je schopny zabezpecit vyriesenie urciteho ciastocneho podproblemu a vzajomnym spojenim programov sa da uskutocnit vyriesenie celej pozadovanej ulohy. Prostriedky pre vzajomne spojenie programov: - prikazova procedura - programovy kanal - presmerovanie vstupov a vystupov programov Princip prace a tvorby prikazovych procedur je podobny ako v operacnom systeme MS DOS Programovy kanal (rura, pipe) je prostriedok jednosmernej udajovej komunikacie medzi procesmi. Je to vyhradeny usek pamati, do ktoreho jeden proces zapisuje a druhy proces cita. Udaje su spristupnovane metodou FIFO. (FIFO = First in, first out t.j. udaje su citane v tom istom poradi ako boli zapisovene) --------- --------- --------- ---------- | |Programovy | |Programovy | |Programovy | | |PROCES1|---------->|PROCES2|---------->|PROCES3|---------->|PROCES4 | | | kanal |filter | kanal |filter | kanal |(filter)| --------- --------- --------- ---------- ============================ STRANA 7 =========================== Na obrazku je znazorneny princip vytvorenia programoveho kanala s pouzitim programov - filtrov, ktore su v prostredi OS Unix casto pouzivane. Filtre su programy, ktore citaju udaje, ktore prichadzaju na ich vstup, spracuju ich a zapisuju ich na vystup. Ako priklad uvadzame niektore programy so strucnym opisom cinnosti: grep vyhladavanie retazca cut extrakcia casti retazcov rev obratenie poradia znakov v riadku tr zamena retazcov wc pocitanie slov, pismen, riadkov sort triedenie obsahu suboru more zobrazovanie udajov na terminal po jednotlivych obrazovkach Priklad: ls -l | more zobrazi obsah aktualneho adresara s pozastavenim vypisu pri zaplneni obrazovky (ekvivalent v MS DOS "dir /p") ls -1 | wc -l "ls -1" zobrazi obsah aktualneho adresara a "wc -l" spocita pocet riadkov vypisu, takze vysledkom je pocet suborov v aktualnom adresari. ls -1 | grep '.txt' | sort zobrazi v abecednom poradi zotriedene mena suborov z aktualneho adresara, v ktorych sa nachadza retazec ".txt" ls -l | tail +2 | cut -c1-11,20-32,45- | sort -n -r +1 vysledkom je vypis obsahu adresara v tvare pristupove prava, velkost v bytoch a meno suboru zotriedeny podla velkosti od najvacsieho po najmensi. Presmerovanie vstupov a vystupov znamena, ze sa programu explicitne urci, z ktoreho suboru ma udaje citat a do ktoreho suboru zapisovat. Priklad: sort tried.txt Program cita udaje zo suboru "netried.txt" a zotriedene udaje uklada do suboru "tried.txt". Prikaz v tvare date >> log.dat umiestneny v subore ".login" sposobi, ze na koniec suboru "log.dat" sa bude pri kazdom prihlaseni zapisovat aktualny systemovy datum a cas. 4. Princip prace s operacnym systemom Kazdy pouzivatel, ktory chce pracovat s operacnym systemom Unix, musi byt tomuto systemu vopred znamy, t.j. musi byt v systeme evidovany. Pre neevidovaneho pouzivatela je system nepristupny. ============================ STRANA 8 =========================== System tymto zabezpecuje svoju ochranu aj ochranu svojich pouzivatelov pred neopravnenym pristupom. Zaroven ochranuje pouzivatelov medzi sebou, aby sa zamedzilo vzajomnemu umyselnemu, alebo neumyselnemu poskodeniu alebo zneuzitiu udajov. Udaje o pouzivatelovi su uvedene v evidencnom subore pouzivatelov /etc/passwd. Kazdy pouzivatel ma pridelene identifikacne cislo (uid), prihlasovacie meno (user name) a sam si moze urcit prihlasovacie heslo (password). pouzivatelia, ktori pracuju na nejakom spolocnom projekte, mozu vytvarat tzv. skupinu, ktora je charakterizovana identifikacnym cislom skupiny (gid) a v ramci tejto skupiny maju urcite rovnake pristupove prava. Dalej ma kazdy uzivatel v evidencnom subore uvedeny svoj domovsky adresar, do ktoreho je po prihlaseni presmerovany a meno programu (procesu), zabezpecujuceho priamy styk s pouzivatelom tzv. uzivatelske rozhranie. Vynimocne postavenie medzi pouzivatelmi ma pouzivatel s uid=0 a s menom "root", tzv. spravca systemu, ktory ma v danom systeme vsetky pristupove prava. Praca so systemom zacina prihlasenim. Prihlasenie pouzivatela do systemu je zabezpecovane prostrednictvom procesu login. Aktivovanie tohoto procesu prebieha po zapnuti terminalu (resp. po stlaceni klavesu Enter), pripojenim sa k pocitacu v ramci pocitacovej siete, alebo interaktivnym spustenim procesu. Na vyzvu login: zada pouzivatel svoje prihlasovacie meno. Ak ma vytvorene prihlasovacie heslo, je vypisom Password: vyzvany ho zadat. Pri zadavani hesla je kvoli ochrane vypnute zobrazovanie zadavanych znakov (heslo sa nezobrazuje). Priklad postupu aj s vypismi je uvedeny v kapitole o pocitacovych sietach. Po uspesnom zadani spravneho mena a hesla je na obrazovku terminalu vypisany obsah suboru "/etc/motd" (Message Of The Day) a v pripade neprazdnej postovej schranky vypis "You have mail". Proces login inicializuje pouzivatelovo uid, gid, ktore ho charakterizuju v prostredi systemu, spusti vykonavanie prikazovej procedury zo suboru ".login" umiestneneho v pouzivatelovom domovskom adresari, ktora zabezpeci nastavenie parametrov pouzivatelovho pracovneho prostredia a aktivuje proces zabezpecujuci styk pouzivatela so systemom - pouzivatelske rozhranie. Rozhranie signalizuje svoju pripravenost prijimat prikazy vypisom tzv. promptu, t.j. retazca, ktoreho tvar je mozne definovat v procedure ".login". Od tejto chvile moze pouzivatel prostrednictvom pouzivatelskeho rozhrania pracovat v systeme. Pouzivatelske rozhranie (pouzivatelsky interfejs, interpret prikazov) je proces aktivovany procesom login. Standardne pouzivanymi rozhraniami su shell (Bourne shell) a C-shell. Ich programy su ulozene v suboroch /bin/sh a /bin/csh. Rozhranie zabezpecuje interpretaciu prikazov a specialnych a riadicich znakov zadavanych pouzivatelom, aktivovanie novych procesov, vykonavanie prikazovych procedur a nastavenie pracovneho prostredia pre pracu pouzivatela a aktivovane procesy. Vyznam niektorych specialnych a riadicich znakov: CTRL/S pozastavenie vypisu na obrazovku CTRL/Q uvolnenie vypisu na obrazovku (opak CTRL/S) CTRL/C prerusenie cinnosti aktivneho procesu CTRL/D zadanie znaku konca suboru, odhlasenie zo systemu | znak pre spojenie procesov do programoveho kanala < znak pre presmerovanie vstupu > znak pre presmerovanie vystupu (prepis obsahu suboru) >> znak pre presmerovanie vystupu (pridavanie k obsahu suboru) ============================ STRANA 9 =========================== Poznamka k pouzivaniu malych velkych pismen. Ako uz bolo pri specifikacii mena suboru spomenute, operacny system Unix rozlisuje velke a male pismena. Kedze mena systemovych programov su tvorene retazcami z malych pismen aj prikazy operacneho systemu a ich parametre, pokial nie je uvedene inak, sa zadavaju malymi pismenami. 5. Niektore vybrane prikazy. clear Vymazanie obrazovky terminalu. (v MS DOS "cls") date Vypis aktualneho systemoveho datumu a casu (v MS DOS "date" + "time" logout Ukoncenie prace v operacnom systeme passwd Zmena prihlasovacieho hesla Funkcia: Po zadani prikazu system vypise spravu Changing password for login_meno Old password: stare_heslo a ocakava zadanie doteraz platneho hesla. Ak je heslo zadane spravne, vypise vyzvu pre zadanie noveho hesla Enter new password: nove_heslo a este vyzvu pre overenie spravnosti zadania noveho hesla Verify: nove_heslo Heslo je retazec lubovolnych znakov, ktoreho dlzka je minimalne 6 znakov. Nedoporucuje sa ako heslo pouzivat lahko vydedukovatelne udaje. (datum narodenia, rodne cislo, meno papagaja, priatela, priatelky a podobne) man Vypis napovedy o zadanej teme (v MS DOS "help") Syntax: a) man meno_prikazu b) man -k retazec Funkcia: a) Zobrazi vypis manualu k specifikovanemu prikazu. b) Zobrazi vypis vsetkych dostupnych tem, v ktorych sa nachadza specifikovany retazec Vypis je zobrazovny cez filter more. ls Vypis informacii o suboroch (v MS DOS "dir") Syntax: ls [ volby ] meno... Funkcia: Ak je parameter "meno" adresar, vypise obsah adresara, ak je parameter "meno" meno suboru, vypise informacie o subore. Ak sa prikaz uvedie bez parametrov, zobrazi obsah aktualneho adresara. Vypisy su v tvare podla specifikovanych volieb. Ked nie je specifikovane inak, mena suborov su vypisane v abecednom poradi. Volby: -l dlhy format vypisu, pre kazdy subor sa vypisuje: typ suboru d pre adresar - pre obycajny subor c pre specialny znakovy subor b pre specialny blokovy subor l pre symbolicky link mod povoleneho pristupu k suboru ============================ STRANA 10 =========================== r subor je mozne len citat w do suboru je mozny zapis x subor je spustitelny - k suboru nie je povoleny ziadny pristup pocet odkazov na dany subor (symbolickych linkov) vlastnik skupina vlastnika velkost suboru v bytoch cas poslednej modifikacie meno suboru -a zobrazi aj subory s menom zacinajucim sa bodkou (".") -R rekurzivne zobrazenie aj obsahov podadresarov Priklady: uvt_system>ls Mail data mbox README english.kvta monitor alldir.txt hladat.treba poznamky ansitext sprava program_pre_vypocet.c bin sprava.crypt term bitnet_adresa logging.dat texty uvt_system>ls -l drwx------ 4 miro 512 Mar 2 08:40 Mail -rw-r--r-- 1 miro 18459 Feb 17 09:20 README -rw-r--r-- 1 miro 855080 Feb 15 07:41 alldir.txt -rw-r--r-- 1 miro 88 Feb 10 17:36 ansitext drwxr-xr-x 2 miro 512 Feb 23 14:01 bin -rw-r--r-- 1 miro 40 Feb 24 09:51 bitnet_adresa -rw-r--r-- 1 miro 29 Feb 23 14:00 co drwxr-xr-x 2 miro 512 Mar 16 14:33 data -rw-r--r-- 1 miro 1405 Feb 10 17:36 english.kvta -rw-r--r-- 1 miro 44 Mar 15 13:25 hladat.treba -rw-r--r-- 1 miro 871 Feb 10 17:36 sprava -rw-r--r-- 1 miro 0 Mar 11 10:45 sprava.crypt -rw-r--r-- 1 miro 2697 Mar 16 14:32 logging.dat -rw-r--r-- 1 miro 6973 Feb 24 08:45 mbox -rw-r--r-- 1 miro 24 Feb 10 17:36 monitor drwxr-xr-x 2 miro 512 Mar 16 14:33 poznamky -rw-r--r-- 1 miro 24 Mar 10 09:52 program_pre_vypocet.c -rw-r--r-- 1 miro 346 Feb 12 06:19 term drwxr-xr-x 2 miro 512 Mar 16 14:33 texty ============================ STRANA 11 =========================== uvt_system>ls -la drwxr-x--x 7 miro 1024 Mar 16 14:33 . drwxr-xr-x 6 root 512 Feb 10 17:36 .. -rwxr-x--x 1 miro 294 Feb 10 17:36 .cshrc -rwxr-xr-x 1 miro 18 Mar 1 14:29 .forward -rw-r--r-- 1 miro 284 Mar 2 11:14 .login -rwxr-xr-x 1 miro 11 Feb 10 17:36 .mailrc -rw-r--r-- 1 miro 11 Feb 10 17:36 .mh_profile -rwxr-x--x 1 miro 182 Feb 10 17:36 .profile drwx------ 4 miro 512 Mar 2 08:40 Mail -rw-r--r-- 1 miro 18459 Feb 17 09:20 README -rw-r--r-- 1 miro 855080 Feb 15 07:41 alldir.txt -rw-r--r-- 1 miro 88 Feb 10 17:36 ansitext drwxr-xr-x 2 miro 512 Feb 23 14:01 bin -rw-r--r-- 1 miro 40 Feb 24 09:51 bitnet_adresa drwxr-xr-x 2 miro 512 Mar 16 14:33 data -rw-r--r-- 1 miro 1405 Feb 10 17:36 english.kvta -rw-r--r-- 1 miro 44 Mar 15 13:25 hladat.treba -rw-r--r-- 1 miro 871 Feb 10 17:36 sprava -rw-r--r-- 1 miro 0 Mar 11 10:45 sprava.crypt -rw-r--r-- 1 miro 2697 Mar 16 14:32 logging.dat -rw-r--r-- 1 miro 6973 Feb 24 08:45 mbox -rw-r--r-- 1 miro 24 Feb 10 17:36 monitor drwxr-xr-x 2 miro 512 Mar 16 14:33 poznamky -rw-r--r-- 1 miro 24 Mar 10 09:52 program_pre_vypocet.c drwxr-xr-x 2 miro 512 Mar 16 14:33 texty chmod Zmena pristupovych prav k suboru Syntax: chmod kod meno_suboru Funkcia: Prikaz nastavuje pristupove prava k specifikovanemu suboru v sulade so zadanym kodom. Pristupove prava mozno specifikovat symbolickym alebo absolutnym kodom. Symbolicky kod je v tvare: [skupina] operator pravo [[operator]pravo] Skupina urcuje pre koho sa meni pravo u - vlastnik (owner) g - skupina (group) o - ostatni (others) Operator urcuje, ci sa pravo prideluje (+) alebo odobera (-) a pravo urcuje typ pristupu k suboru r - citanie obsahu w - zapisovanie do suboru (zrusenie suboru) x - vykonanie, spustenie suboru Kody sa oddeluju ciarkou. ============================ STRANA 12 =========================== Absolutny kod je v tvare: abc kde a, b, c su cisla z rozsahu 0 - 7 a znamenaju definiciu pristupovych prav pre vlastnika (a), skupinu (b) a ostatnych (c). Kazdy typ pristupu ma svoju hodnotu a cisla su tvorene suctom tychto hodnot. 0 = ziadny pristup 1 = vykonanie, spustenie suboru 2 = zapisovanie do suboru (zrusenie suboru) 4 = citanie obsahu Priklady: Nastavenie prava citania obsahu a zapisovania do suboru "sprava" len pre vlastnika suboru chmod u+r+w-x,g-rwx,o-rwx sprava chmod 600 sprava 6 = 4 + 2 (citanie + zapisovanie) Nastavenie vsetkych prav pre vlastnika, prava citania a spustania pre skupinu a prava citania pre ostatnych pre subor "program" chmod u+rwx,g+rx-w,o+r-wx program chmod 754 program cat Zretazenie suborov a zobrazenie (vypis) obsahu suboru (v MS DOS "type") Syntax: cat [ volby ] zoznam_suborov Funkcia: Prikaz v tvare: cat subor1 subor2 subor3 ... cita obsahy suborov v zadanom poradi a zobrazuje ich na standardny vystup, t.j. na obrazovku Prikaz v tvare: cat sub1 sub2 sub3 > sub4 Cita a zretazuje obsahy suborov v specifikovanom poradi a zapisuje do suboru sub4. Ak subor sub4 existoval, jeho obsah sa prepise. Prikaz v tvare: cat sub1 sub2 sub3 >> sub4 Cita a zretazuje obsahy suborov v specifikovanom poradi a zapisuje do suboru sub4. Ak subor sub4 existoval, nove udaje sa pripoja na jeho koniec Volby: - (znak "minus") program cita udaje zo standardneho vstupu (z terminalu) -n kazdy riadok je ocislovany -b potlacenie cislovania prazdnych riadkov, plati len v spojeni s volbou -n -s viac po sebe iducich prazdnych riadkov nahradi na vystupe jednym praznym riadkom ============================ STRANA 13 =========================== Priklady: 1. cat meno_suboru Vypise obsah suboru na obrazovku 2. cat -n meno_suboru Vypise obsah suboru na obrazovku pritom kazdy riadok je ocislovany 3. cat -s meno_suboru Vypise obsah suboru na obrazovku viac prazdnych riadkov nahradi na vystupe jednym prazdnym riadkom. more Zobrazenie (vypis) obsahu suboru po jednotlivych obrazovkach Syntax: more zoznam_suborov Funkcia: Postupne zobrazi subory uvedene v zozname na obrazovku tak, ze po zaplneni obrazovky sa vypis prerusi a system caka na dalsi povel, ktory je reprezentovany znakom zadanym z klavesnice: medzera - posun textu o celu obrazovku d - posun textu o pol obrazovky b - posun textu o celu obrazovku spat ENTER - posun textu o jeden riadok q - ukoncenie prikazu bez dokoncenia prezerania mkdir Vytvorenie noveho adresara (v MS DOS "mkdir","md") Syntax: mkdir meno_adresara Funkcia: Prikaz vytvori adresar zadaneho mena v aktualnom adresari. Ak je v ramci parametra meno_adresara specifikovana aj cesta, vytvori sa adresar v specifikovanej vetve stromu adresarov. Priklady: 1. mkdir zadanie Prikaz vytvori v aktualnom adresari podadresar "zadanie" 2. mkdir /usr/uzivatelia/automatizacia/ulohy Prikaz vytvori adresar "ulohy", v specifikovanej vetve stromu adresarov. Adresare "usr", "uzivatelia", "automatizacia" uz musia existovat cd Zmena aktualneho adresara (v MS DOS "chdir","cd") Syntax: cd meno_adresara Funkcia: Prikaz zmeni aktualny adresar podla specifikovaneho mena adresara, pritom "." znamena odkaz na aktualny adresar a ".." je odkaz na nadradeny adresar. Pouzitie prikazu bez specifikacie adresara sposobi presmerovanie do tzv. domovskeho adresara, ktory je uvedeny v evidencnom subore pouzivatelov (/etc/passwd), t.j. adresara, do ktoreho je pouzivatel nasmerovany po prihlaseni Priklady: 1. cd zadania Prikaz sposobi presmerovanie do adresara "zadania". Pritom adresar "zadania" sa musi nachadzat v aktualnom adresari. 2. cd /usr/uzivatelia/automatizacia/ulohy Prikaz sposobi presmerovanie do adresara "ulohy". 3. cd .. Prikaz sposobi presmerovanie do nadradeneho adresara . ============================ STRANA 14 =========================== pwd Vypis uplnej cesty k aktualnemu adresaru (v MS DOS "cd" bez parametrov) Syntax: pwd Funkcia: Prikaz informacneho charakteru. Pouzitie napriklad pred prikazom "cd" alebo "mkdir". Prikaz vypisuje uplnu cestu v strome adresarov k aktualnemu adresaru. cp Kopirovanie suborov (v MS DOS "copy") Syntax: a) cp [volby ] subor1 subor2 b) cp [volby ] zoznam_suborov meno_adresara c) cp [volby ] meno_adresara1 meno_adresara2 (ULTRIX) Funkcia: a) Prikaz kopiruje obsah suboru "subor1" do suboru s menom "subor2". Nie je mozne kopirovat subor sam do seba. b) Prikaz kopiruje subory v zadanom poradi do specifikovaneho adresara. Mena suborov sa zachovavaju. c) Prikaz kopiruje subory z adresara "meno_adresara1" do adresara "meno_adresara2". Mena suborov sa zachovavaju. Volby: -i Interaktivny rezim, vypisanie vyzvy pre pouzivatela, aby rozhodol o prepisani obsahu suboru, ktory uz existuje Prepisanie sposobi iba odpoved zacinajuca pismenom "y" mv Presun alebo premenovanie suboru (v MS DOS "ren") Syntax: a) mv [ volby ] subor1 subor2 b) mv [ volby ] zoznam_suborov meno_adresara Funkcia: a) Premenovanie suborov. Prikaz presunie "subor1" do "suboru2". Ak "subor2" existuje, najskor je zruseny. Ak pouzivatel nema povolenie zapisu do "suboru2", prikaz zobrazi pristupove prava "suboru2" a vyzvu pre potvrdenie prepisania suboru. b) Presun suborov do specifikovaneho adresara s uchovanim povodnych mien suborov Nie je mozne uskutocnit presun suboru sameho do seba. Volby: -i Interaktivny rezim -F potlacenie interaktivneho rezimu, presun je uskutocneny vzdy rm Zrusenie suboru, adresara (v MS DOS "del, erase") rmdir Zrusenie adresara (v MS DOS "rmdir, rm") Syntax: a) rm [ volby ] meno meno = meno suboru alebo adresara b) rmdir meno_adresara Funkcia: a) Prikaz zrusi zaznam o specifikovanom subore v adresari, pre vykonanie prikazu su potrebne pristupove prava zapisu do adresara. Ak pouzivatel nema pristupove prava zapisu k rusenemu suboru, je vyzvany na potvrdenie zrusenia. b) Zrusenie specifikovaneho adresara, ktory musi byt prazdny ============================ STRANA 15 =========================== Volby: (pre rm) -r zrusenie celej vetvy specifikovaneho podstromu -i interaktivny rezim (vyziadanie potvrdenia pre vymazanie) -f potlacenie interaktivneho rezimu, vymazanie suboru bez ohladu na pristupove prava k suboru 6. Prostriedky komunikacie medzi pouzivatelmi. who vypis informacie o tom, ktori pouzivatelia su prave teraz v systeme prihlaseni Priklad: uvt_system>who df07 tty02 Mar 12 13:15 (LAT_08002B2E49D2) df13 tty03 Mar 12 12:12 (LAT_08002B2E49D2) df03 tty04 Mar 12 13:23 (LAT_08002B2E49D2) miro tty05 Mar 12 13:29 (LAT_08002B2592B6) finger vypis podrobnejsej informacie o prihlasenych pouzivateloch Priklad: uvt_system>finger Login Name TTY Idle When Office df07 DF student 07 02 3 Fri 13:15 df13 DF student 13 03 1 Fri 12:12 df03 DF student 03 04 Fri 13:23 miro Miroslav Wagner 05 Fri 13:29 w vypis informacie o tom, ktori pouzivatelia su prave teraz v systeme prihlaseni a nazvov procesov (programov), s ktorymi prave pracuju Priklad: uvt_system>w 1:29pm up 15 days, 19:32, 4 users, load average: 0.00,0.00,0.00 User tty from login@ idle JCPU PCPU what df07 02 LAT_08002B2E49 1:15pm 3 -csh df13 03 LAT_08002B2E49 12:12pm 1 ftp 130.238.98.11 df03 04 LAT_08002B2E49 1:23pm telnet vsld miro 05 LAT_08002B2592 1:29pm w write interaktivna komunikacia medzi pouzivatelmi formou dialogu Syntax: write meno_pouzivatela [cislo_terminalu] write meno_pouzivatela@meno_uzla [cislo_terminalu] Funkcia Riadky pisane na terminali posiela zadanemu pouzivatelovi. Na jeho terminali sa objavi sprava: Message from vase_meno@vas_uzol on vas_terminal at hh:mm Od tejto chvile vsetky znaky zadane na vasom terminali, ukoncene klavesom sa zobrazia aj na jeho terminali Ukoncenie prikazu je stlacenim talk dialog "telefonovanie" s inym pouzivatelom Syntax: talk meno_pouzivatela [cislo_terminalu] talk meno_pouzivatela@meno_uzla [cislo_terminalu] ============================ STRANA 16 =========================== Funkcia: Po zadani prikazu sa obrazovka vasho terminalu rozdeli na dve polovice a v hornom riadku sa zobrazi sprava: [Waiting for your party to respond] po 30 sekundach: [Ringing your party again] Terminal zadaneho pouzivatela vypise spravu: Message from TalkDaemon@meno_jeho_uzla... talk: connection requested by vase_meno@meno_vasho_uzla talk: respond with: talk vase_meno@meno_vasho_uzla ktora ho informuje o tom, ktory pouzivatel s nim chce hovorit a zaroven mu napoveda ako odpovedat na volanie. Ak hodla nadviazat kontakt, zada prikaz: talk vase_meno@meno_vasho_uzla Na obrazovkach oboch terminalov sa vypise sprava: [Connection established] Spojenie je nadviazane a od tejto chvile kazdy znak, ktory napisete, je zobrazeny na hornej polovici vasej obrazovky a zaroven na dolnej polovici obrazovky volaneho pouzivatela a naopak. Spojenie moze ukoncit ktorykolvek z ucastnikov rozhovoru stlacenim klavesu CTRL/C mail - odosielanie a prijem elektronickej posty Syntax: pre citanie posty mail [-f] [meno_suboru] pre posielanie mail [-v] adresa [adresa ...] Volby: -f citanie obsahu lokalnej postovej schranky, ak sa neuvedie parameter "meno_suboru", cita sa obsah suboru "mbox", ak sa neuvedie volba, system prezera obsah systemovej postovej schranky pridelenej pouzivatelovi (zvycajne subor "/usr/spool/mail/login_meno") -v verifikacia, potvrdenie odoslania spravy. Funkcia: Elektronicka posta sluzi na komunikaciu medzi pouzivatelmi v ramci pocitacoveho systemu, v lokalnej sieti a taktiez medzi roznymi sietami, ktore su navzajom prepojene. Umoznuje pouzivatelom posielat si navzajom spravy a subory, pricom rychlost elektronickej posty je ovela vacsia nez posty obycajnej. Podmienkou pre jej pouzitie je aby pouzivatel mal pridelenu tzv. e-mail adresu. V ramci pocitacovej siete INTERNET je adresa zvycajne tvorena prihlasovacim menom pouzivatela (login name) a nazvom pocitaca (uzla siete), na ktorom je pouzivatel evidovany. Obidve mena su bez medzery spojene znakom @ (komercne "a"). meno_pouzivatela@meno_uzla Pri posielani posty pouzivatelovi toho isteho pocitaca (uzla) je mozne znak @ a nazov pocitaca vynechat. ============================ STRANA 17 =========================== Priklad pre postup pri posielani posty: mail jozef@decef.elf.stuba.sk (1) Subject: Skusobny text (2) Toto je prvy riadok textu spravy. (3) Toto je druhy riadok... (4) (5) Toto je posledny riadok (6) alebo <.> (7) Cc: (8) Po zadani prikazu (1) system vypise vyzvu Subject: a pouzivatel napise strucny nazov svojej spravy (2). Potom pokracuje v zadavani textu (3),(4),(5),(6). Je mozne zadat aj prazdne riadky (5). Ukoncenie pisania textu a odoslanie spravy je mozne urobit dvoma sposobmi. Ked sa kurzor nachadza na prvej pozicii noveho riadku, pouzivatel zada znak CTRL/D, alebo napise znak bodka a ukonci riadok klavesom (7). System potom vypise vyzvu Cc: (Carbon Copy) a ocakava zadanie dalsich adries, na ktore bude sprava odoslana. Ak pouzivatel na ziadne dalsie adresy spravu posielat nehodla, stlaci klaves (8). Sposoby ako odoslat pomocou elektronickej posty vopred pripravene spravy ulozene v suboroch, su uvedene v literature. Priklad pre postup pri citani posty: Pouzivatel je na prichod posty upozorneny vypisom You have mail. Po zadani prikazu mail (bez parametrov), system zobrazi zoznam prijatych sprav, kde o kazdej sprave je informacia ci je to sprava nova (N) alebo len necitana (U), poradove cislo spravy, adresa odosielatela, datum a cas odoslania, pocet riadkov / pocet znakov a nazov spravy (Subject). Znak "&" je prompt pre zadavanie prikazov. N 1 jozef@decef.elf.stuba.sk Mon Feb 15 07:22 16/460 "Odpoved" N 2 root Mon Feb 15 12:03 32/1103 "Oznam" & Zoznam niektorych prikazov: ? - zobrazenie strucnej napovedy h - zobrazenie zoznamu sprav n - zobrazenie obsahu n - tej spravy (n je cislo) d n - vymazanie obsahu n - tej spravy (n je cislo) q - ukoncenie prezerania posty, precitane spravy sa presunu zo systemovej do pouzivatelovej lokalnej schranky (subor mbox) x - ukoncenie prezerania posty, obsah schranky ostava nezmeneny mesg Povolenie alebo zakazanie prijimania sprav Syntax a funkcia: mesg y povolenie mesg n zakazanie Prikazom sa povoli, alebo zakaze prijimanie sprav vyvolanych prikazmi write a talk 7. Prostriedky pre spracovanie textov. Ulohy suvisiace so spracovanim textov mozno vseobecne rozdelit do troch tried: vytvaranie (pisanie noveho textu), editovanie (doplnovanie a opravy), spracovanie (formatovanie, tvorba tabuliek, triedenie...). Pre vytvaranie textu a editovanie sa pouzivaju programy nazvane ============================ STRANA 18 =========================== textove editory. Pre spracovanie sa zvycajne pouzivaju uz spomenute programy - filtre. Niektore specialne typy editorov dokazu pracovat ako programovatelne filtre pre spracovanie textov. Zvycajne je kazdy operacny system typu Unix vybaveny tymito standardnymi editormi: ed , ex meditory pracujuce v riadkovom rezime vi obrazovkovy editor sed specialny programovatelny editor Blizsi popis ovladania je uvedeny v literature [1] az [5]. Vseobecne mozno povedat, ze filozofia ovladania tychto editorov je diametralne odlisna od ovladania editorov pracujucich v prostredi MS DOS. Existuju vsak aj editory, ktore su svojim ovladanim velmi podobne editorom z prostredia MS DOS. Prikladom moze byt editor joe instalovany v operacneho systemu ULTRIX na serveroch pocitacovej siete Technickej univerzity vo Zvolene. Strucny popis prikazov a povelov je zabudovany priamo v editore a je pristupny kedykolvek pocas prace s tymto editorom. Pre editovanie textoveho suboru, napriklad "sprava.txt", staci zadat prikaz v tvare: joe sprava.txt 8. Zaver. Tato kapitola by mala sluzit ako pomocka pre prve pokusy prace s operacnym systemom Unix. Strucne charakterizuje zakladne rysy a principy prace v tomto operacnom systeme. Zamerne su vynechane podrobnejsie informacie, ktore nie su nevyhnutne potrebne pre prvy kontakt so systemom. Vzhladom k tomu, ze tato problematika je znacne rozsiahla, pre ziskanie podrobnejsich informacii odporucame prestudovat literturu zaoberajucu sa specialne touto problematikou. ============================ STRANA 19 =========================== 9. Literatura [1] Vyber informaci z organizacni a vypocetni techniky Ing. Vaclav Houser a kol. Operacni systemy typu Unix [2] Casopis PC World 4-10/1992 [3] Prirucka k OS ULTRIX [4] UNIX V. Uvod do operacneho systemu, Milan SOVA, GRADA Praha 1991 [5] Operacny system UNIX a jazyk C Brodsky Jan, Skocovsky Ludek, SNTL Praha 1989 [6] Vyber informaci z organizacni a vypocetni techniky Doc.Ing. Jaroslav Jandos, CSc. a kol. Site LAN Kancelarske stroje Praha, 1991 [7] Casopis Mechanizace a automatizace administrativy (MAA) 9/1988 [8] Pavol Horvath, Miroslav Linhart Periferne zariadenia cislicovych pocitacov ALFA Bratislava, 1991 [9] Ing. Peter Halgas SANET - popis siete, uzivatelske sluzby, sposoby pripojenia interna publikacia UAKOM SAV Banska Bystrica, 1993