ebook img

Operativni sistemi: UNIX i Linux PDF

441 Pages·2004·2.472 MB·Serbian
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Operativni sistemi: UNIX i Linux

Borislav (cid:1)or(cid:2)evi(cid:3) Dragan Pleskonji(cid:3) Nemanja Ma(cid:4)ek Operativni sistemi: UNIX i Linux Viša elektrotehni(cid:4)ka škola Beograd, 2004. Autori: dr Borislav (cid:1)or(cid:2)evi(cid:3) mr Dragan Pleskonji(cid:3) Nemanja Ma(cid:4)ek Recenzenti: prof. dr Borivoj Lazi(cid:3) mr Slobodan Obradovi(cid:3) Izdava(cid:4): Viša elektrotehni(cid:4)ka škola u Beogradu Za izdava(cid:4)a: mr Dragoljub Martinovi(cid:3) Lektor: An(cid:2)elka Kova(cid:4)evi(cid:3) Tehni(cid:4)ka obrada: Nemanja Ma(cid:4)ek, Borislav (cid:1)or(cid:2)evi(cid:3), Dragan Pleskonji(cid:3) Dizajn: Nemanja Ma(cid:4)ek Štampa: ime štamparije štampano u 400 primeraka (cid:1)(cid:2)Predgovor(cid:2)(cid:3)(cid:2) UNIX je stabilan operativni sistem visokih performansi, pogodan za izvršavanje velikog broja razli(cid:4)itih aplikacija. Kao takav, dostupan je ve(cid:3) trideset godina za brojne ra(cid:4)unarske arhitekture. Ve(cid:3)ina velikih svetskih proizvo(cid:2)a(cid:4)a ra(cid:4)unara razvija sopstvenu komercijalnu varijantu UNIX operativnog sistema, poput SCO, HP-UX, IBM AIX i Sun Solaris. Alternativa kvalitetnim, ali relativno skupim UNIX operativnim sistemima je Linux, koji zadržava ve(cid:3)inu dobrih osobina UNIX sistema, a dodatno se odlikuje raspoloživim izvornim kodom i prakti(cid:4)no besplatnim koriš(cid:3)enjem. Zahvaljuju(cid:3)i intuitivnom, user- friendly grafi(cid:4)kom okruženju, Linux se može koristiti kao operativni sistem na radnim stanicama. Tako(cid:2)e, može se koristiti i kao operativni sistem na serverima u LAN i WAN mrežama, gde mu može biti dodeljena uloga servera za datoteke, web i mail servera, mrežne skretnice (rutera) ili mrežne barijere (firewall ure(cid:2)aja) Knjiga se prvenstveno bavi koriš(cid:3)enjem i administracijom Linux operativnog sistema i namenjena je osnovnom kursu iz predmeta Operativni sistemi na Višoj elektrotehni(cid:4)koj školi u Beogradu. Globalno, knjiga se može podeliti na (cid:4)etiri tematske celine koje se obra(cid:2)uju u okviru predmeta: rad sa sistemima datoteka, kontrola pristupa na nivou sistema datoteka, rad sa datotekama i administracija UNIX sistema. Tako(cid:2)e, knjiga može poslužiti kao koristan izvor informacija svakom (cid:4)itaocu koji se ozbiljnije bavi administracijom UNIX ili Linux operativnog sistema. Knjiga je podeljena u (cid:4)etrnaest glava, koje su ukratko opisane u nastavku teksta. U prvoj glavi ”UVOD U UNIX OPERATIVNI SISTEM” opisan je kra(cid:3)i istorijat UNIX i Linux operativnih sistema, razjašnjeni su pojmovi GNU GPL licence i Open Source softvera, dat je opšti pregled Linux sistema, zna(cid:4)ajnih delova jezgra i osnovnih servisa Linux sistema. U drugoj glavi ”BLOK URE(cid:1)AJI I ADMINISTRACIJA SISTEMA DATOTEKA” prikazani su osnovni postupci administracije blok ure(cid:2)aja (diskova, disketa, CD i DVD ure(cid:2)aja i magnetnih traka) i razli(cid:4)itih sistema datoteka. Objašnjeni su postupci podele diskova na particije, kreiranja i aktiviranja sistema datoteka i formiranja aktivnog UNIX stabla, administracije swap prostora i oporavka ošte(cid:3)enih sistema datoteka. Glava tako(cid:2)e obuhvata kratak pregled savremenih journaling sistema datoteka kao što su ext3, ReiserFS, JFS i XFS i objašnjenja zna(cid:4)ajnih sistemskih direktorijuma u aktivnom UNIX stablu. U tre(cid:3)oj glavi ”KORISNICI I GRUPE” prikazani su osnovni postupci administracije korisni(cid:4)kih naloga i grupa i objašnjeni formati fundamentalnih datoteka /etc/passwd, /etc/shadow i /etc/group. Nakon toga su objašnjeni pojmovi stvarnog i efektivnog identifikatora korisnika i procedura privremenog prijavljivanja na sistem pod drugim imenom. U (cid:4)etvrtoj glavi ”KONTROLA PRISTUPA NA NIVOU SISTEMA DATOTEKA” najpre se uvode pojmovi vlasni(cid:4)kih odnosa i pristupnih prava za datoteke i direktorijume. U ovoj glavi su prikazani postupci promene pristupnih prava i vlasni(cid:4)kih odnosa, postavljanja specijalnih atributa SUID, SGID i sticky bit, kao i specijalnih atributa datoteka na ext2/ext3 sistemima datoteka. Tako(cid:2)e, ilustrovan je i jednostavan postupak postavljanja kvota na sistemima datoteka. U petoj glavi ”RAD SA DATOTEKAMA IZ KOMANDNE LINIJE” prikazane su razne komande za rad sa datotekama i direktorijumima. Glava obuhvata više celina. Na po(cid:4)etku glave opisane su osnovne funkncije komandnog interpretera i opšte komande za rad sa datotekama. Nakon toga, detaljno su opisane komande za kopiranje, pomeranje i brisanje datoteka, odnosi izme(cid:2)u originala i kopije, kao i uslovi neophodni za izvršenje odgovaraju(cid:3)e komande. U okviru ove celine detaljno su objašnjeni pojmovi hard i simboli(cid:4)kih linkova. Slede(cid:3)u celinu obuhvataju komande za rad sa direktorijimima, sa posebnim osvrtom na komandu za pretraživanje direktorijuma, find. Na kraju glave dat je opis zna(cid:4)ajnih komandi za rad sa tekstualnim datotekama, uklju(cid:4)uju(cid:3)i i najpoznatije tekst editore. U šestoj glavi ”SHELL PROGRAMIRANJE” najpre su dati primeri jednostavnih shell programa i objašnjenje postupka pokretanja shell programa. Nakon toga su date definicije sistemskih i korisni(cid:4)kih promenljivih, opis komandi specifi(cid:4)nih za shell programiranje i raznih shell proširenja. Zatim su obra(cid:2)ene konstrukcije u shell programiranju, kao što su uslovne konstrukcije, petlje i funkcije. Na kraju glave su dati primeri složenijih shell programa. U sedmoj glavi ”MREŽNO OKRUŽENJE” dat je najpre kra(cid:3)i uvod u TCP/IP skup protokola i lokalne ra(cid:4)unarske mreže. Nakon toga objašnjeno je konfigurisanje Linux mrežnog okruženja, koje obuhvata konfiguracione datoteke i programe za administraciju TCP/IP skupa protokola i mrežnih servisa. Na kraju glave opisani su mrežni sistem datoteka (NFS), mehanizam centralizovane autentifikacije (NIS) i Apache web server (cid:4)ime je Linux prikazan kao mrežni server u lokalnoj ra(cid:4)unarskoj mreži i na Internetu. U osmoj glavi ”ŠTAMPA(cid:5)I” prikazan je najpre proces štampanja pod UNIX sistemom, dat je opis štampa(cid:4)a, redova (cid:4)ekanja za štampu i print servera. U okviru ove glave detaljno je obra(cid:2)en CUPS (Common UNIX Printing System), objašnjene su komande koje se koriste za štampanje, administraciju reda za štampu i podešavanje karakteristika štampa(cid:4)a i dokumenata iz komandne linije. Na kraju glave opisani su osnovni postupci administracije CUPS sistema, koji obuhvataju instalaciju paketa, upravljanje štampa(cid:4)ima, klasama štampa(cid:4)a i redovima za štampu. U devetoj glavi ”ARHIVIRANJE I BACKUP” uvode se pojmovi arhive i rezervne kopije podataka, nakon (cid:4)ega se navode razlike izme(cid:2)u arhiva i sistema datoteka. Nakon toga su opisani Linux programi za backup i arhiviranje, tar i cpio, sa prate(cid:3)im primerima. Na kraju glave ukratko su opisani programi dump i restore za integralno arhiviranje (cid:4)itavih sistema datoteka. U desetoj glavi ”ADMINISTRACIJA PROCESA” objašnjen je pojam i date su osnovne vrste procesa, nakon (cid:4)ega su opisane komande za prikazivanje procesa i slanje signala procesima. Zatim su objašnjeni prioriteti procesa, izvršavanje procesa u pozadini, grupe procesa i kontrola posla. Na kraju glave opisani su postupci zakazivanja i periodi(cid:4)nog izvršavanja komandi programima at i cron. U jedanestoj glavi ”PODIZANJE I ZAUSTAVLJANJE SISTEMA” prikazane su procedure podizanja (boot) i zaustavljanja sistema (shutdown). U ovoj glavi su opisani proces init, razli(cid:4)iti nivoi izvršenja UNIX sistema, inicijalizacione rc datoteke, procesi getty, login i shell i komanda za zaustavljanje sistema shutdown. U dvanestoj glavi ”INSTALACIJA SOFTVERSKIH PAKETA” najpre je opisan postupak instalacije softvera, a zatim osnovne vrste softverskih paketa, kao što su tarball, RPM i deb paketi. Nakon toga je dato kra(cid:3)e uputstvo za koriš(cid:3)enje poznatih paket menadžera: Red Hat Package Manager i Debian package management system. U trinaestoj glavi ”KONFIGURISANJE LINUX KERNELA” najpre je dat opis programskih modula jezgra, a zatim su objašnjeni postupci dodavanja i uklanjanja modula iz aktivnog jezgra. Nakon toga se diskutuje o problemima koji se ne mogu rešiti modulima. Na kraju glave detaljno je opisana procedura prevo(cid:2)enja kernela. U (cid:4)etrnaestoj glavi ”SIGURNOST I ZAŠTITA UNIX I LINUX SISTEMA” dat je kra(cid:3)i pregled zaštite UNIX i Linux sistema. U okviru ove glave obra(cid:2)eni su neki standardni mehanizmi zaštite UNIX sistema i opšte sigurnosti Linux sistema, paket za šifrovanje i potpisivanje GNU Privacy Guard i iptables mrežna barijera. U dodatku A dat je spisak zna(cid:4)ajnijih komandi Linux sistema. U dodatku B naveden je prevod GNU opšte javne licence na srpski jezik. U dodatku C naveden je plan i program laboratorijskih vežbi iz predmeta Operativni sistemi, koji se sluša na Višoj elektrotehni(cid:4)koj školi. U okviru ovog dodatka data su pitanja koja (cid:4)itaoci mogu iskoristiti za proveru ste(cid:4)enog znanja. (cid:1)(cid:2)Zahvalnost(cid:2)(cid:3)(cid:2) Zahvaljujemo se svima koji su u(cid:4)estvovali ili na bilo koji na(cid:4)in pomogli u pripremi i realizaciji ove knjige. Posebno se zahvaljujemo: • Ma(cid:4)ek Draganu, koji je detaljno pregledao rukopis i ukazao na greške, • Nikoli(cid:3) Ivanu (Joe), na savetima na osnovu kojih su neka poglavlja dobila svoj kona(cid:4)an oblik, • saradnicima Gavrilovi(cid:3) Predragu, Krneta Borislavu i Krstanovi(cid:3) Mladenu, na svim korisnim savetima i sugestijama, • Kurti(cid:3) Nikoli, Dostani(cid:3) Miroslavu, Kukobat Gojku, Pavlovi(cid:3) Draganu, Samardži(cid:3) Saši i Bogojevi(cid:3) (cid:5)edomiru, studentima Više elektrotehni(cid:4)ke škole, koji su aktivnim u(cid:4)estvovanjem pomogli u pripremi materijala za ovu knjigu. Autori (cid:1)(cid:2)Sadržaj(cid:2)(cid:3) UVOD U UNIX I LINUX OPERATIVNE SISTEME 1 Istorijat UNIX operativnog sistema 1 Vrste UNIX sistema 2 Linux operativni sistem 3 GNU/Linux i Open Source Software 3 Linux distribucije 4 Opšti pregled Linux sistema 4 Linux kernel 5 Struktura Linux sistema 5 Modularni kernel 7 Zna(cid:4)ajni delovi kernela 8 Upravljanje procesima 9 Procesi i niti 10 Dodeljivanje procesora procesima 10 Komunikacija izme(cid:2)u procesa 10 Upravljanje memorijom 11 Izvršavanje korisni(cid:4)kih programa 11 Ulazno - izlazni sistem 11 Sistemi datoteka i aktivno UNIX stablo 12 Mrežne strukture 12 Osnovni servisi Linux sistema 12 init 12 Prijavljivanje sa terminala 13 syslog 13 Periodi(cid:4)no izvršavanje komandi 14 Grafi(cid:4)ki korisni(cid:4)ki interfejs 14 Mrežni rad 14 Prijavljivanje sa mreže 14 Deljenje datoteka i mrežni sistemi datoteka 15 Elektronska pošta 15 Štampanje 15 BLOK URE(cid:1)AJI I ADMINISTRACIJA SISTEMA DATOTEKA 17 Blok ure(cid:1)aji 18 Hard diskovi 18 Fizi(cid:4)ke osobine i geometrija diskova 18 IDE i SCSI diskovi. Specijalne datoteke koje predstavljaju ure(cid:2)aje. 20 RAID (redundantni niz jeftinih diskova) 21 Flopi diskovi 22 Formatiranje magnetnih medijuma 24 Formatiranje disketa 25 CD-ROM ure(cid:2)aji 25 Magnetne trake 26 Podela diskova na particije 27 Boot sektori, particione tabele i tipovi particija 27 Master Boot Record, boot sektori i particione tabele 27 Extended i logi(cid:4)ke particije 28 Tipovi particija 29 Podela diska na particije 29 fdisk 29 cfdisk 31 Specijalne datoteke i particije diska 32 Sistemi datoteka 33 UNIX sistemi datoteka 34 Dodeljivanje prostora datotekama 36 Rupe u datotekama 36 Konvencija o imenima objekata sistema datoteka 36 Tipovi sistema datoteka 37 Sistemi datoteka sa dnevnikom transakcija (Journaling) 39 Ext3 sistem datoteka i režimi vo(cid:2)enja dnevnika transakcija 39 Reiser FS 40 XFS 40 JFS 41 Koji sistem datoteka treba koristiti ? 41 Kreiranje sistema datoteka 41 Parametri UNIX sistema datoteka 43 Aktiviranje i deaktiviranje sistema datoteka 44 Montiranje sistema datoteka na aktivno UNIX stablo 44 root i user sistemi datoteka 45 /etc/fstab i auto-mount 46 Pregled aktiviranih sistema datoteka 47 Deaktiviranje sistema datoteka 48 Dozvole za aktiviranje sistema datoteka 49 Provera i oporavak sistema datoteka 49 Logi(cid:4)ki defekti i provera integriteta sistema datoteka 50 lost+found direktorijum 51 Fizi(cid:4)ki defekti i provera ispravnosti površine diska 51 Defragmentacija 51 Ostali programi za rad sa sistemima datoteka 52 Rad sa diskovima bez sistema datoteka 53 Komanda dd (disk-to-disk copy) 54 Virtuelna memorija (swap) 55 Aktivno UNIX stablo 56 root sistem datoteka 57 /etc direktorijum 58 /usr sistem datoteka 59 /var sistem datoteka 60 /proc sistem datoteka 60 KORISNICI I GRUPE 62 Korisni(cid:2)ki nalozi 62 Kreiranje korisni(cid:4)kih naloga 63 /etc/passwd 63 /etc/shadow 64 (cid:5)lanstvo u grupama 65 Dodela identifikatora korisnicima i grupama (UID i GID) 65 Inicijalno okruženje - etc/skel direktorijum 66 Kreiranje korisni(cid:4)kih naloga bez upotrebe pomo(cid:3)nih programa 66 Promena parametara korisni(cid:4)kih naloga 67 Privremena zabrana prijavljivanja na sistem 68 Uklanjanje korisnika 68 Identifikacija korisnika 69 Privremeno prijavljivanje na sistem pod drugim imenom 69 Stvarni i efektivni identifikatori korisnika (RUID i EUID) 71 KONTROLA PRISTUPA NA NIVOU SISTEMA DATOTEKA 72 Vlasni(cid:2)ki odnosi i prava pristupa 72 Prava pristupa u sistemu datoteka 72 Kategorije pristupnih prava 74 Problem unije vlasni(cid:4)kih kategorija 75 Zna(cid:4)enje prava pristupa za datoteke i direktorijume 76 Odre(cid:2)ivanje pristupa za datoteke i direktorijume 76 Podrazumevana prava pristupa (umask) 78 Promena vlasništva i pristupnih prava 79 Promena pristupnih prava 80 Simboli(cid:4)ki režim 80 Oktalni režim 82 Promena vlasni(cid:4)kih odnosa 83 Promena vlasnika 83 Primarne i sekundarne grupe 84 Promena grupe kojoj objekat pripada 84 Specijalni atributi datoteka i direktorijuma 85 setuid (SUID) i setgid (SGID) 85 Sticky bit (t) 85 Specijalni atributi datoteka na ext2/ext3 sistemu datoteka 86 Disk kvote 87 Administracija kvota na Linux sistemu 88 Preduslovi za postavljanje kvota 88 Postavljanje kvota 88 Datoteke quota.user i quota.group 89 Dodeljivanje kvote korisniku 89 Dodeljivanje kvote grupama 90 Dodeljivanje jednakih kvota ve(cid:3)em broju korisnika 90 Ostali alati za rad sa kvotama 91 RAD SA DATOTEKAMA IZ KOMANDNE LINIJE 92 Komandni interpreter (shell) 92 Funkcije komandnog interpretera 92 Interpretacija komandne linije 93 Inicijalizacija programa 94 Redirekcija ulaza i izlaza 94 Povezivanje komandi u pipeline 96 Zamena imena datoteka 97 Rukovanje promenljivim i kontrola okruženja 97 Shell programiranje 98 Dodatne mogu(cid:3)nosti Bourne-again shella 98 Koriš(cid:3)enje kontrolinih karaktera 98 Alternativno ime komande (alias) 98 Ponavljanje komandne linije (history) 99 Modifikacija komandne linije 100 Kompletiranje imena datoteka 101 Shell promenljive i prilago(cid:2)eni prompt 101 Lokalne promenljive 101 Promenljive okruženja 102 Prilago(cid:2)avanje odziva (prompt) komandnog interpretera 103 Inicijalizacione datoteke komandnog interpretera 103 Korisni(cid:4)ke inicijalizacione datoteke 104 Pore(cid:2)enje poznatih komandnih interpretera 105 Bourne shell (sh) 105 C shell (csh) 105 Bourne-again shell (bash) 105 Korn shell (ksh) 106 Osnovne komande za rad sa datotekama 106 Dobijanje pomo(cid:3)i 106 Lokatori komandi 108 Prikazivanje informacija o sistemu 109 Odre(cid:2)ivanje tipa datoteke 109 Tipovi datoteka 110 Upotreba komande file 111 Komanda strings 111 Kopiranje, pomeranje i brisanje datoteka 112 Kopiranje datoteka i direktorijuma 112 Kopiranje jedne datoteke 113 Kopiranje grupe datoteka iz istog direktorijuma 113 Rekurzivno kopiranje direktorijumskog stabla 114 Relacioni odnosi originala i kopije 114 Potrebni i dovoljni uslovi za kopiranje datoteke 115 Opcije komande cp 115 Primeri koriš(cid:3)enja komande cp 116 Pomeranje datoteka i direktorijuma 121 Promena imena i/ili pomeranje jedne datoteke 121 Pomeranje grupe datoteka iz istog direktorijuma 121 Potrebni i dovoljni uslovi za promenu imena datoteke 122 Potrebni i dovoljni uslovi za pomeranje datoteke 122 Opcije komande mv 122 Brisanje datoteka 123 Brisanje jedne datoteke 123 Brisanje grupe datoteka iz istog direktorijuma 123 Rekurzivno brisanje direktorijumskog stabla 124 Potrebni i dovoljni uslovi za brisanje datoteke 124 Opcije komande rm 124 Linkovi 124 Hard linkovi 125 Kreiranje hard linkova 126 Osobine hard linkova 126 Primer kreiranja i upotrebe hard linkova 126 Simboli(cid:4)ki linkovi 127 Kreiranje simboli(cid:4)kih linkova 128 Osobine simboli(cid:4)kih linkova 128 Primer kreiranja i upotrebe simboli(cid:4)kih linkova 129 Upotreba opcije -d komande cp (no-dereference) 129 Rad sa direktorijumima 130 Kretanje po direktorijumskom stablu 130 Prikazivanje sadržaja direktorijuma 131 Kreiranje direktorijuma 133 Brisanje direktorijuma 133 Kopiranje direktorijuma 134 Pretraživanje direktorijuma 134 Kriterijumi pretrage 135 Akcioni izrazi 136 Kvalifikatori pretrage 137 Složeni kriterijumi pretrage 137 Rad sa tekstualnim datotekama 138 Pregledanje sadržaja tekstualne datoteke 138 cat 138 more 139 less 139 Prikazivanje po(cid:4)etka i kraja datoteke (komande head i tail) 140 Brojanje karaktera, re(cid:4)i i linija 141 Upore(cid:2)ivanje sadržaja datoteka 142 Komanda cmp 142 Komanda diff 143 Ure(cid:2)ivanje sadržaja datoteka 144 Ure(cid:2)ivanje sadržaja datoteka po odre(cid:2)enom kriterijumu (sort) 144 Priprema tekstualnih datoteka za štampu (pr) 145 Podela tekstualnih datoteka (split) 145 Uklanjanje duplikata linija iz datoteke (uniq) 146 Traženje teksta u datoteci 147 Regularni izrazi (regular expressions) 147 Jednostavan oblik komande grep 148 Specijalni karakteri 148 Zamena jednog karaktera 149 Ponavljanje karaktera 150 Ponavljanje regularnih izraza 150 Upore(cid:2)ivanje po(cid:4)etka i kraja linije teksta 150

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.