Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

SREDNJOKOLSKI CENTAR `` PETAR KOI IPOVO

GIMNAZIJA

2 0 0 0 GENERACIJA

2004

MATURSKI RAD
IZ INFORMATIKE

TEMA:

UENIK: DAMIR RIBI

PROFESOR: SLAVKO MARKANOVI

U ipovu, junski ispitni rok kolske godine 2003/2004 .

uvod u UNIX

uvod

Damir Ribi IVG1

POGLAVLJE

Uvod
ta je to Unix ?
Operativni sistem.
U prvih dvadesetak godina raunarske tehnologije svi postojei raunari su bili razliiti. Svaki raunar iz odreene serije imao je razliite komponente: procesor, memoriju ,periferije. Tako, program napisan na jednom raunaru nije se mogao koristiti ni na jednom koji nema identinu arhitekturu: komande procesora, prekidi, portovi, registri memorije jednostavno, program se morao pisati iz poetka. Nije bio mogu ni multitasking ,tj .izvravanje vie procesa ili programa u isto vrijeme, a suvino je spominjati rad u dva ili vie programskih jezika. Postojeem raunarskom sistemu nije se mogao dodati ni jedan novi ureaj ; ostatak sistema nije znao kako da ga koristi. Da bi se prevazili ovi nedostaci strunjaci visoke tehnologije su doli na ideju da se napravi univerzalni program koji e se moi prilagoditi svakoj arhitekturi raunara; ta platforma , tj. operativni sistem je bio program-posrednik koji je prilagoavao resurse raunarske arhitekture svakom posebnom programu. Dakle, trebalo je pisati programe za odreeni operativni sistem , i svaki raunar koji ima taj univerzalni program ( tj. operativni sistem) mogao je da izvrava taj program; oigledno da se programi izvravaju posredno, tj.svaki program upuuje svoje zahtjeve jezgru operativnog sistema , a opet on raunarskim komponentama. Ako prikljuimo neki novi ureaj (za skladitenje podataka, zvuk , grafiku ili vie memorije ) trebalo je samo dodati operativnom sistemu jo jedan program , driver (drajver), koji mu govori kako da koristi dotini ureaj. Isto tako ,bilo je lake raditi sa skupovima datoteka i programima smjetenim na diskovima ( rasporeivati ih u posebne fascikle , foldere ; kopirati , brisati ...). Uopte, svaki postojei (sada, nekada ili akobogda) operativni sistem sastoji se od osnovnih djelova: Kernel
[ jezgro ] je osnovni i glavni dio svakog operativnog sistema; njegov

zadatak je da komunicira sa diskovima, trakama, tampaima, komunikacijskim linijama, terminalima ; izvrava programe, kod

STRANA 1

uvod u UNIX

uvod

Damir Ribi IVG1

boljih sistema i multitasking ,tj. dijelenje resursa za rad vie programa istovremeno. Sve ostale komponente operativnog sistema su samo usluni programi, dodatna oprema kernela. File System [ datoteni sistem ] je dio sistema koji se bavi organizacijom podataka u medijima za pohranu. Najmanji dio (paket) podataka sa kojim moe da radi sistem je datoteka , skup podataka sauvan od strane nekog programa ; sistem razlikuje datoteke jedino po imenu i veliini. Podaci o rasporedu datoteka na disku ,npr. ,nalaze se u tabeli datoteka ( file table ) . Svaki OS ima svoj datoteni sistem. [ komandna ljuska ] ili prevodilac komandi ( command interpreter ) je dio operativnog sistema koji prevodi intuitivne i lako pamtljive komande koje zadaje korisnik u kodove koje razumije kernel sistema. Jedan sistem moe imati vie komandnih ljuski, a veina dananjih sistema sadri pored komandne i grafiku ljusku ( GUI ) , gdje korisnik komunicira sa kernelom koristei ikone, menije , dijaloge i pokazivake ureaje .

Shell

Istorijat Unix-a
Davne 1969 godine, Ken Thompson, programer amerike firme AT&T Bell Laboratories napisao je prvi operativni sistem dananjice, MULTICS ; bio je to viezadani i viekorisniki sistem razvijen za line potrebe programera pomenute firme. Njegov tim je taj projekat smatrao alom , sve dok rukovodioci nisu odluili da ga komercijalno upotrijebe pod imenom Unix , 1970 godine; nisu ni slutili kakav e uspjeh doivjeti ,jer Unix do dananjih dana nosi titulu najstarijeg i najjaeg operativnog sistema koji je ikad postojao, sluei kao primjer za izradu ostalih operativnih sistema. Iako je Unix prvobitno radio na VAX seriji mini raunara PDP-7 firme Digital Equipment Corporation koji su koristili Alpha procesore , nedugo nakon toga napisani su Unixi za skoro sve hardverske platforme ,ukljuujui Intelove procesore , pa ak i personalne , IBM kompatibilne , raunare. U poetku verzije Unixa su se koristile na univerzitetima .Upravo za to doba je vezana sljedea verzija Unixa ,

STRANA 2

uvod u UNIX

uvod

Damir Ribi IVG1

BSD ( Berkeley Software distribution) ,koja je razvijena na amerikom univerzitetu Berkeley , ubrzo je postala akademski standard za Unix . To je u stvari poboljana verzija AT&T jevog Unixa verzije 7, iako i nije u potpunosti bio komaptibilan sa njim. To je prvi Unix koji je mogao da radi na Intel platformi procesora , a ta verzija i danas postoji pod imenom FreeBSD i moe se besplatno koristiti. Poboljanja se odnose na korisniko suelje , tj na laku interakciju korisnika i raunara ,tako da su sada Unix mogli da koriste i obini smrtnici, a ne samo vrhunski programeri. Kao i prethodna verzija Unixa , i ova je u potpunosti napisana u programskom jeziku C ime je dokazana njegova upotrebljivost za pisanje sistemskih programa. XENIX, Sun Solaris, System V, HP-UX
U razdoblju 70-ih i 80-ih godina, zahvaljujui napretku mikroprocesorske tehnologije, Unix se poinje koristiti na personalnim raunarima, a ne samo na mini (DEC) i velikim (mainframe) raunarima tako da je taj period obiljeila pojava sistema XENIX firme Microsoft , koji nije doivio neki komerciajlni uspjeh, tako da firme Microsoft i AT&T ujedinjuju svoje projekte u System V , koji se mogao izvravati na bilo kojoj platformi, poevi od prvog Intelovog 32-bitnog procesora 80386. Sledei vaan korak bila je pojava sistema SunOS kasnije nazvan Solaris, firme Sun Microsystems , koji je do dan danas ostao najpopularniji Unix sistem , kako za mrene servere, routere, superraunare tako i za vrlo popularne Sun radne stanice. Drugi na listi popularnosti je Helwett-Packard ov HP-UX ,koji se najvie koristi za servere svih vrsta. O projektu Linux vie e biti govora na kraju izlaganja.

Upotreba Unix-a
Da jo jednom ponovimo, Unix je najstariji i najjai operativni sistem dananjice. U poetku , kao i danas , koristi se u naunim ustanovama , kao i vojnim primjenama npr. navoenje balistikih raketa , koristi ga NASA , kao i najjai superkompjuteri dananjice, veliki kao zgrade i jaki kao milijarda PC raunara zajedno. Kernel Unixa mogue je uz odgovarajue Shell skripte programirati za najrazliitije primjene kao na primjer bazne stanice GSM mrea za mobilnu telefoniju , a na drugoj strani radne stanice velike snage kao i obine PC raunare. Ipak , definitivno najvanija primjena moda je ipak upravljanje velikim mreama i Internetom ,koje ne bi ni postojale , da nije fleksibilnih routera (povezivaa) preko kojih se odvija razmjena poruka za po nekoliko stotina miliona raunara istovremeno. To je vodea platforma za veinu dananjih mrenih servera (posluitelja) svih veliina i namjena ( baze podataka ,web, el.pota , prenos datoteka itd.).
STRANA 3

uvod u UNIX

Struktura sistema

Damir Ribi IVG1

POGLAVLJE

Struktura sistema
Datoteke i direktorijumi
Najmanja koliina podataka kojom moe upravljati operativni sistem je jedna datoteka (file).Datoteke mogu biti izvrne(programi), tekstualne, sistemske,zatim mogu da sadre slike, tabele, baze podataka... Postoje hiljade razliitih vrsta datoteka, a svaka aplikacija ima svoju posebnu vrstu. Kod veine savremenih Unixa ime datoteke moe da sadri do 256 znakova, a isti sluaj je i sa ekstenzijom(nastavkom), koja je odvojena takom( index.html , npr.), po kojoj prepoznajemo tip datoteke ; iako sam sistem skenirajui datoteku moe da zakljui o kojem se tipu radi. Svaki upotrebljivi Unix sistem sadri najmanje nekoliko hiljada sistemskih datoteka , uslunih programa(utilities), itd. Svaki korisnik sistema nakon dueg rada ima na stotine svojih dokumenata. Mora se priznati da bi se bilo jako teko snai u toj hrpi datoteka kada bi ih traili samo po imenu. Zato se datoteke rasporeuju u posebne virtuelne fascikle i ladice koje nazivamo direktoriji ; koji opet mogu sadravati i druge direktorije. Tako, na primjer, u direktoriju /home svaki korisnik ima svoj direktorij, u kojem opet po svom izboru pravi poddirektorije ( pisma, programi, igre, rauni, slike, npr.) radi lakeg snalaenja. Potrebno je istai da struktura(stablo-tree) direktorija uopte ne odraava njihov stvarni raspored na mediju za skladitenje(tj. disku); direktorij je u stvari sprecijalna datoteka-sadraj u kojoj je za svaku stavku zapisana lokacija ; kada zatraimo neku od tih stavki, sistem uitava podatke sa oznaene lokacije. Ako kopiramo jedan direktorij u neki drugi, datoteke se nee zaista pomijerati na druge krajeve diska, ve e se samo kopirati adrese stavki na disku. Ako u nekom direktoriju zatraimo da nam se detaljno izlista sadraj ( komandom ls l ,npr.) dobiemo spisak u kojem linija sa svakom stavkom izgleda otprilike ovako: -rwxr-xr-x 1 damir masters 2510 Apr 7 13:45
dozvole za rad vlasnik broj veza
STRANA 4

index.html
ime datoteke

radna grupa

veliina u bajtovima

datum i vrijeme zadnje promjene

UNIX UNIX uvod u UNIX Ghj

Shell skripte [

] ]

Damir Ribi IVG1 Damir Ribi IVG1

Struktura sistema

Da objasnimo termine koji nisu jasni sami po sebi. Vlasnik datoteke je osoba koja je datoteku kreirala (iako se vlasnitvo nad datotekom moe prenijeti na nekog grugog ,komandom chown ,na primjer). Vie ljudi koji rade na zajednikom projektu ine jednu radnu grupu.Broj veza nam govori na koliko mjesta nas upuuje data stavka direktorija. Dozvole nam opisuju koje operacije je mogue vriti nad datotekom (ili direktorijem) i mogu biti itanje (r ,read), zapisivanje ( w ,write), izvravanje ( x ,execute ).

r w x
vlasnika

r x
grupu direktorij

- x
ostale

oznaka dozvole za:

Ukoliko je prva oznaka d u pitanju je direktorij, a ako tu stoji crtica (hyphen) onda je to datoteka. Dozvole za vlasnika i njegovu radnu grupu su oznaene ve pomenutim znacima (r,w,x ), ako ne postoje onda stoji crtica; dok kategorija ostali podrazumjeva bilo kog korisnika. Na primjer, -r--r--r-- znai da ovu datoteku svi korisnici mogu samo itati (read-only), ne mogu mijenjati sadraj niti izvavati( vjerovatno je u pitanju tekst). Da se ponovo vratimo na direktorije. Objanjenje je dato na sljedeoj strani, a ovdje ukratko predstavljamo jednostavan na veini instalacija slian
[ Shell skripte ] Damir Ribi IVG1

Datoteni sistem
root [ / ]

home - damir

etc

bin

usr

dev

mnt

tmp

-spiskovi - nethack -mail - vfs -maturski - mozilla ... itd. - sound - passwd - snjeza - hosts - karte - ... - programi itd. ... itd. - ... itd.
STRANA 5

- rmdir - tar - mount - ping - g++ - perl - ... itd.

- include - man - local - share - ... itd. - sbin -init -halt - mkfs - null - ... itd.

- spell - nroff - cmon - hda1 ... - hdz15 - tty1 ... - ttyz50 ... itd.

- cdrom - floppy - none - hda1 - auto - ... itd.

UNIX uvod u UNIX

Struktura sistema

Damir Ribi IVG1

Veina Unixa dananjice sadri ovakvu strukturu direktorija radi lakeg snalaenja korisnika na razliitim instalacijama, iako svaki administrator moe odrediti vlastitu. to se tie sadraja date su samo neke stavke(items) koje mogu postojati .

Root [/] (korijen) je osnovni ,poetni direktorij, od kojeg se granaju ostali. Onaj ko moe da prisupi korijenu (suid root) ima ovlatenja za doslovno sve operacije u sistemu. /home sadri za svakog korisnika poseban direktorij , u kojeg opet pomenuti korisnici smjetaju svoje datoteke i druge sadraje, i granaju ga u dalje direktorije. /etc sadri programe za odravanje(administraciju) sistema ,kao i razne startup (init) skripte koje se izvravaju prilikom podizanja sistema; takoe i datoteke za konfiguraciju sistema. /bin sadri najee koritene programe , komandne ljuske , servere, komande, kao i ostale sistemske i uslune(utilities) programe. /usr sadri ostatak operativnog sistema, tj. niz poddirektorijuma sa raznim bibliotekama funkcija, upravljakim programima(drivers) i sl. /dev sainjavaju direktoriji koji predstavljaju ureaje.Da se primjetiti da sistem podrava teoretski veliki broj ureaja: za istovremeni pristup komandnoj ljusci( virtuelni , teleprinterski terminal tty ), hard diskova ( od hda1 do hdz15,stotine! ) /mnt predstavlja ureaje( uglavnom medije za masovno skladitenje podataka, diskove, npr.), iji su datoteni sistemi montirani tj. prijavljeni za upotrebu( od svih moguih iz direktorija /dev. Primjetimo da je na osnovni hard disk u stvari direktorijum, tj. /mnt/hda1 . /tmp (temporary) je direktorij u koji se privremeno smjetaju podaci,tokom raznih operacija korisnika ili sistema. Restartovanjem raunara svi podaci iz ovog direktorija e nestati !

Dozvole za pristup direktorijima


Svaki obini korisnik u direktoriju /home ima svoj direktorij kome moe da pristupi. Pristup je hijerarhijski, to znai da ovlatenje za pristup direktoriju podrazumjeva pristup svim niim poddirektorijima koji su unutar ovoga sa dozvoljenim pristupom. To znai da obian korisnik ne moe da pristupi direktorijima drugih korisnika; niti sistemskim (/bin,/usr,npr.). Da se zakljuiti da super-korisnik(suid), koji moe da pristupi osnovnom (root) direktoriju moe da pristupi svim ostalim direktorijima, tj. ima ovlatenja da obavlja doslovno sve operacije u sistemu. To ovlatenje imaju obino administratori sistema koji su zadueni za odravanje mree i raunara. Oni obino odreuju i dozvole za pristup datotekama (r,w,x). Bitno je jo dodati da direktoriji kompletnog sistema mogu biti smjeteni na nekoliko fiziki razliitih diskova ili particija, ali se korisniku uvijek prikazuje jedinstvena struktura. Na kraju, po Unix filozofiji sami diskovi sa kojih se sistem podigao prikazuju se kao direktoriji (/dev/hda1 ,npr.).
STRANA 6

uvod u UNIX

Komandna ljuska

Damir Ribi IVG1

POGLAVLJE

Rad sa komandama
Osnovne komande
Veina dananjih korisnika Unix baziranih radnih stanica koristi udobnosti grafikog korisnikog suelja (GUI), na odgovarajuim podplatformama ( X-Window Server ,npr.). Meutim, za administraciju mrea i sloenih sistema, kao i rjeavanje problema(troubleshooting) i potpuniju kontrolu sistema, potrebno je poznavati komande. Ve smo pomenuli da korisnik sa jezgrom (kernel) sistema moe da komunicira jedino posredno; u naem sluaju preko ljuske(shell), koja je na prevodilac komandi (command interpreter). Najpoznatije ljuske u modernim Unixima su npr. Bourne, C shell, Korn, tosh, pdksh, a svi primjeri komandi u daljem tekstu su isprobani u moda najpoznatijoj bash ljusci. Da budemo konkretni, evo kako izgleda prijava na jedan Unix sistem.
Linux RedHat v.8.2 ; accessed via telnet port 23 --- Wellcome to NASA OrbitScope database --If you're not authorized to access,disconnect now! login: damir password: Wellcome damir! You have no mail. Serving terminal over tty4 damir@scope[public]:~$_

Krenimo redom. U prve tri linije imamo naziv verzije Unixa , tehniki detalj o konekciji, zatim naziv, opis, namjenu raunara koji se koristi i izvjesno prijetee upozorenje. Ovo je tzv. poruka dana (message-of-the-day, nalazi se u /etc/motd) koju dobiva svaki korisnik kad se prijavljuje. Obzirom da je Unix viekorisniki sistem, svaki korisnik mora da upie korisniko ime (user name), a zatim lozinku(password). Primjetimo da kod upisa lozinke karakteri se ne pojavljuju(samo izvjesni kvadrati, razlog: zamislite da vam je neko iza lea i ita lozinku ;-) .
STRANA 7

uvod u UNIX

Komandna ljuska

Damir Ribi IVG1

Zatim slijede servisna obavjetenja( koji virtuelni terminal se koristi, "nemate pote "). Na kraju dolazi odzivnik(prompt)za unos komandi, koji se zavrava znakom $. Ako imamo administratorsku lozinku, dovoljno je da za ime korisnika upiemo su (super-user). Pojavie se neto drugaiji prompt , root@scope[/]#_ ,npr.
NAPOMENA: nekada davno raunarima se pristupalo pomou terminala,tj. ulaznoizlaznih ureaja ,obino kombinacija tastature i monitora, kojih je moglo biti vie spojenih za jedan raunar. U poetku su to bili teleprinteri (teletyper), neto kao elektronska pisaa maina. I na dananje Unixe se spaja pomou virtuelnih terminala (tty). Danas su posebno interesantni virtuelni terminali udaljenih raunara, gdje naa radna stanica spojena na mreu (PC raunar, recimo) glumi(emulira), tj. pretvara se da je terminal (monitor+tastatura) udaljenog raunara. Pri tome se ukucane komande na naem raunaru samo prikazuju, a na udaljenom(remote) raunaru se izvravaju, a na naem displeju se ispisuje ono to se dogaa tamo , kao da smo direktno spojeni.To koriste hakeri za provale na takve raunare. Ovu TELNET uslugu i danas koriste administratori za odravanje udaljenih servera na mrei.

Komande za rad sa datotekama i direktorijima


Za sve primjere komandi koje e biti pokazane koristie se stablo direktorija prethodno prikazano na strani 5 . Pretpostavimo da koristimo administratorsku lozinku da bismo mogli da obavljamo nesmetano sve operacije, i da smo ve opisanim postupkom prijavljeni(logovani). Prvo , da saznamo u kojem se direktoriju nalazimo, koristei komandu pwd:
root@tty4# pwd /home/damir/ root@tty4#_ < pritisnuti enter >

Sada, da pogledamo sadraj direktorija komandom ls :


root@tty4# ls a l drwxr-xr-x 2 damir masters 32 Feb drwxrwxr-x 12 damir masters 320 Jan drwxrwxr-x 3 damir masters 1240 Feb drwxr-xr-- 5 damir masters 0 Jan -rwxr-xr-x 1 damir masters 129 Apr 14 11 12 11 3 15:25 10:31 9:41 10:31 12:32 . .. spiskovi mail maturski.doc

Komanda, pored svog osnovnog oblika u svojoj sintaksi kao to vidimo moe sadravati i dodatne parametre ili argumente tzv.prekidae (switch) kojima korisnik bira posebne opcije ili nain djelovanja komande koji nisu prisutni u osnovnom obliku. Tako , npr. parametar l znai prikazivanje svih osobina(properties) svake stavke,
STRANA 8 UNIX

Komandna ljuska

Damir Ribi IVG1

uvod u UNIX

Komandna ljuska

Damir Ribi IVG1

inae bi vidjeli samo imena datoteka i direktorija. Argument a znai "doslovno sve stavke"; zbog toga vidimo ova dva udna direktorija: (taka) i (taka-taka) . Ovaj prvi predstavlja lokaciju direktorija u kojem se nalazimo (kad listamo tekui direktorij, sistem u stvari ita veze iz njega). predstavlja link za direktorij koji je jedan nivo vie od ovoga gdje smo sad (roditeljski ili parent). Jo da napomenemo da se sadraj direktorija moe prikazati i komandom dir . Kretanje kroz direktorije se vri komandom cd (change directory). Kao argument jednostavno navodi se direktorij u koji elimo da uemo. Probaemo da uemo u direktorij spiskovi koji se nalazi u tekuem direktoriju /home/damir .Dakle,
root@tty4# cd damir root@tty4# pwd /home/damir/spiskovi root@tty4# ls gimnazija.doc zanati.doc root@tty4#_ < promjenimo direktorij > < da vidimo gdje smo > < to je to ! > < da vidimo ta ima > trgovacka.doc

Da bismo izali iz ovoga direktorija na nivo vie, tj. gdje smo prethodno bili potrebno je pozvati link za roditeljski direktorij, tj. :
root@tty4# cd .. root@tty4# pwd /home/damir root@tty4#_ < promjenimo direktorij > < da vidimo gdje smo > < to je to ! >

Da bismo doli u osnovni (root) direktorij, trebali bi smo jo dva puta otkucati
cd .. , to jest da izaemo u direktorij /home ,a iz njega opet nivo vie u korijen. Meutim , dovoljno e biti da otkucamo cd / . Inae, da bismo dospjeli u neki

direktorij trebali bi smo mnogo puta ulaziti u jedan, pa u njegov poddirektorij, a izlaziti u nivo vie, pa jo jedan Ako znate gdje treba da stignete, dovoljno je da otkucate putanju(path) koju e sistem prei umjesto nas, recimo, da bismo stigli iz bilo kojeg direktorija u direktorij programi korisnika snjeza (na primjer, iz damir-ovog direktorija spiskovi ) , dovoljno je rei:
root@tty4# pwd /home/damir/spiskovi root@tty4# cd /home/snjeza/programi root@tty4# pwd /home/snjeza/programi root@tty4#_ < da vidimo gdje smo > < tako i jest > < sutina prie > < da vidimo gdje smo > < nema lai nema prevare > < vaa elja je moja zapovjed >

Zapis putanje kao argumenta komande zajedno sa objektom obrade moe se primjeniti za sve druge komande i programe. Tako, na primjer, ako elimo da
STRANA 9

uvod u UNIX

Komandna ljuska

Damir Ribi IVG1

kopiramo datoteku koristei komandu cp , uzmimo za primjer datoteku maturski.doc u damir-ovom direktoriju koji se nalazi u direktoriju /home u direktorij tmp koji se nalazi u korijenu datotenog sistema, moemo u odzivnik upisati:
root@tty4# cp home/damir/maturski.doc root@tty4# cd /tmp ; ls -a maturski.doc root@tty4#_ /tmp/maturski.doc

Kao to vidimo komanda cp za kopiranje sastoji se iz dva argumenta; prvi govori ta elimo da kopiramo (tj. originalnu lokaciju i naziv datoteke), a ovaj drugi dio odvojen razmakom kazuje gdje to elimo da kopiramo(tj. lokaciju gdje e se nalaziti kopija datoteke). Da smo eljeli da kopiramo datoteku tako da kopija ima drugo ime, mogli smo upisati na primjer:
root@tty4# cp home/damir/maturski.doc /tmp/magistarski.doc

a ako elimo da kopija ima isto ime kao original, ne moramo upisati nita:
root@tty4# cp home/damir/maturski.doc /tmp/

Samo ukratko emo opisati ostale komande za rad sa datotekama. Ako elimo da pomjerimo datoteku sa jednog mjesta na drugo unutar datotenog sistema, pri emu vie nee biti orginalne datoteke na staroj lokaciji, koristimo komandu mv (move) , koja ima oblik mv ta gdje ; dakle slino kao kod kopiranja unosimo lokaciju i naziv datoteke koju pomjeramo i lokaciju na koju kopiramo. Jedan poseban sluaj bi bio npr. mv maturski.doc magistarski.doc, gdje datoteku pomjeramo na istu lokaciju sa koje je pomjeramo (??) , ali biva zapisana pod drugim imenom; dakle, ovako moemo promjeniti ime datoteci. Ako elimo da nam se prikae ( tj. preusmjeri, concatenate ) tekstualna datoteka na ekran, pri emu je tekst sastavljen samo od ASCII znakova koristi se komanda cat koja kao argument ima naziv datoteke koju prikazujemo ( npr. cat spisak.txt ). Datoteku moemo obrisati komandom rm (remove), koja za argument ima datoteku koju briemo (rm maturski.doc,npr), ili vie njih istovremeno, uz navoenje imena svih datoteka koje briemo razdvojenih p r a z n i m mjestom . Nove direktorije pravimo komandom mkdir , gdje je argument naziv novog direktorija, koji je odmah nakon toga spreman za upotrebu ( npr. mkdir programi ). Da bi se direktorij uklonio komandom rmdir ( remove ), mora biti potpuno prazan, tj. ne smije sadravati datoteke ili druge direktorije, osim ako se koristi u obliku rmdir naziv r (recursive); dakle briu se svi sadraji ispod pomenutog direktorija (npr. naziv ).

STRANA 10

uvod u UNIX

Komandna ljuska

Damir Ribi IVG1

Sada emo dati kratak pregled ostalih komandi koje nismo pomenuli u prethodnom opisu; zbog nedostatka prostora naznaena je samo upotreba komande; da se bar zna da postoje, a detalji se mogu potraiti u virtuelnom priruiku (manual) za Unix pomou komande man , gdje se kao argument navodi naziv komande za koju traimo opis, tj. pomo ( o pravljenju direktorija detalje saznamo pomou komande man mkdir ,npr.) U sljedeem poglavlju biti e opisane neke naprednije mogunosti Unixa gdje e kroz primjere biti dato jo nekoliko komandi. tape archiver , kompletan sadraj diska pretvara u datoteku,koja se moe snimiti na traku kao rezervna kopija diska . gnuzip , Unix verzija poznatog programa za kompresiju(smanjenje veliine ) datoteke . ve pomenuti zip program,ali ovaj put za dekompresiju, tj. vraanje prvobitnog oblika datoteci, dakle suprotna operacija od zipovanja (un-zip) . pokree jedan vrlo koriten tekst editor; ako je ime datoteke argument, otvorie je i moemo je itati ili ureivati, ako ne postoji takva datoteka , kreirae novu sa tim imenom; vrlo popularan ekranski editor je vi , takoer. upuuje zahtjev za promjenu lozinke; od korisnika e se dalje oekivati da unese staru lozinku a zatim novu. traenje informacija o korisnicima nae mree disk usage , koritenje diska; ispisuje podatke o slobodnom prostoru na disku i kvote za pojedinane korisnike i slino line printer, preusmjerava izlaz procesa na linijski tampa; ako je argument ime datoteke, ona e biti odtampana. kompajlira izvorni kod napisan u programskom jeziku C++ pomou nekog tekst editora u izvrni program, takoe vrlo koriten kompajler je i cpp ,a za obini C se koristi cc pisanje tekstualne poruke korisnicima koji trenutno rade na istom raunaru(host) kao i mi. remote login prijava na udaljeni raunar,preko mree; dok se na lokalni prijavljujemo samo sa login , a odjavljujemo sa logout traenje odreene datoteke na raunaru koji koristimo podeavanje prioriteta izvrenja procesa koji trenutno rade pokretanje klijentskog programa za prenos datoteka preko mree,( file pransfer protocol)koji ima svoje vlastite komande ( na odzivnik ftp> otkucamo ? da dobijemo listu istih) .

tar gzip gunzip

emacs

passwd finger du lp g++

write rlogin find nice ftp

STRANA 11

uvod u UNIX

Ostale mogunosti

Damir Ribi IVG1

POGLAVLJE

Ostale mogunosti
U ovom poglavlju bie opisane mogunosti rada koje zbog koncepcije nisu mogle da se pomenu ranije, ali su vrlo bitne; nisu neto specijalno ,ali ipak predstavljaju malo vei oblik poznavanja sistema.

Koritenje parametara
Veina komandi je objektno orijentisana, tj obavlja neku operaciju kojoj je argument objekat nad kojim radi (datoteka, proces i sl.). Meutim, neke komande i programi imaju dodatne mogunosti, koje je mogue u liniji komande upisati nakon objekta obrade kao dodatni argument, koji nazivamo parametar ili prekida(switch). Naveemo opti oblik komande koja sadri parametre, kao i konkretan primjer; ova praksa se primjenjuje kod svih komandi; znaenje i uopte koritenje prekidaa zavisi individualno od komande ili programa: komanda objekat p .Moemo zatraiti upotrebu i vie opcija istovremeno; komanda objekat p x v ili jednostavnije komanda objekat pxv. Ako elimo pogledamo sadraj direktorija u kojem se nalazimo, /home/damir npr. komandom ls , vidjeemo otprilike:
root@tty4# ls spiskovi mail root@tty4# ls drwxr-xr-x 2 drwxrwxr-x 12 drwxrwxr-x 3 drwxr-xr-- 5 -rwxr-xr-x 1 root@tty4#_ < ta to ima tamo > maturski.doc < kratko i jasno > a l < hou sve detaljno > damir masters 32 Feb 14 15:25 . damir masters 320 Jan 11 10:31 .. damir masters 1240 Feb 12 9:41 spiskovi damir masters 0 Jan 11 10:31 mail damir masters 129 Apr 3 12:32 maturski.doc

Pomou parametra a moemo vidjeti sve (all) datoteke (one koje poinju takom su nevidljive za obian ls ! ), a prekida l prikazuje datoteke u dugakom (long) formatu, sa svim ovim detaljima; inae ispie samo njihova imena.

STRANA 12

uvod u UNIX

Ostale mogunosti

Damir Ribi IVG1

Preusmjeravanje procesa
Mnoge komande i programi rade na principu da dobijaju neke podatke na ulazu, a nakon operacije ispisuju informacije u neki izlaz . Standardni (default) ulaz ili izlaz se mogu preusmjeriti u neto drugo; vrlo jednostavno, koritenjem znakova > i < .Npr.,
root@tty4# ls > report.txt root@tty4# cat report.txt spiskovi mail maturski.doc root@tty4#_

Ispis komande ls smo preusmjerili u datoteku ,tako da se ne prikazuje na ekranu ( standardni izlaz). Kad smo zatraili sadraj te datoteke, vidjeli smo listing direktorija. Drugi primjer: ako otkucamo mail tata@kralj.net < poruka.dat ,komanda mail nam nee dati liniju da napiemo poruku (standardni ulaz) ve e je uzeti iz datoteke. Izlaz jedne komande mogue je nadovezati (pipeline) da bude ulaz drugoj komandi, a njen izlaz da bude ulaz treoj... itd. Jedini izuzetak su komande koje imaju fiksan ulaz (za komandu ls to je direktorij) ili izlaz ( za lp to je uvijek tampa); takve komande mogu stajati jedino na kraju odnosno poetku cjevovoda. Primjer:
root@tty4# who damir stanko bane mitar root@tty4# wc -l damir stanko bane mitar 4 root@tty4# who wc l 4 root@tty4#_

Komanda who (ko?) ispisuje login imena korisnika koji trenutno koriste raunar(host).[ komanda who am i (ko sam ja) bi nam prikazala nae ime (?!)] , dok komanda wc (word count) broji rijei.Taj proces smo nadovezali,tako da odmah dobijemo traeni broj. Komande se nadovezuju znakom .

Praenje procesa
Pod procesom podrazumjevamo program ili komandu koja se izvrava na raunaru; obino zajedno sa drugim programima i kodovima blagodarei viezadanosti (multitasking) Unixa. Postoje i pozadinski (background) procesi, ije izvrenje ne moemo pratiti na ekranu. ta se to sve dogaa na naem sistemu,saznajemo sa ps : PID predstavlja indentifikacioni broj procesa, TTY terminal sa kojeg je on pozvan, TIME vrijeme od poetka procesa do sada, a konano CMD naziv procesa. Procesi koji su zavreni nee se pojaviti na spisku, logino.
STRANA 13

uvod u UNIX

Ostale mogunosti

Damir Ribi IVG1

root@tty4# ps PID TTY TIME 89 02 0:10 132 02 0:09 31 02 0:05 195 02 0:01 root@tty4#_

CMD sh traceroute ping ps

Proces moemo nasilno prekinuti tj. ubiti komandom kill , gdje kao parametar navodimo PID broj iz ps listinga; na primjer, ako elimo da ukinemo proces ping, treba otkucati kill 31 , i on e nestati. Mnogi osnovni ili roditeljski (parent) procesi automatski pokreu druge pod-procese ili djecu ( children). koji su pod kontrolom osnovnog procesa. Gaenjem procesa nestaju i njegovi pod-procesi; ako nekad prekinemo neki proces i sa njim nestanu jo neki, nita udno, ubijanjem roditelja umiru i njihova djeca. Izvrenje komande se alje u pozadinu ako se nakon nje upie &.

Programiranje na Unixu
Iako je 90% Unixovog koda napisano pomou jezika C , i najosnovnije instalacije sadre kompajlere za nekoliko poznatih programskih jezika,dok ostale podravaju skoro sve koji se koriste, od kojih emo pomenuti samo neke: Ada, Assembler, AWK, BASIC, C++, Caml, Clisp, Dylan, Eiffel, Erlang, Forth, Fortran, Gofer, Guile, Haskell, Icon, Intercal, Java, Lua, Lisp, Mercury, Modula, Oberon, Pascal, Perl, Pike, Postscript, Prolog, Python, REXX, Sather, Scheme, Simula, Smalltalk, SQL, Tcl, itd. Pomou alata kao Flex i Bison npr., moete praviti vlastite programske jezike. Podrazumjeva se da bolje opremljene radne stanice sadre vrlo udobna radna okruenja koja ispunjavaju sve zahtjeve jednog developera , uzmimo samo za primjer KYLIX, ekvivalent Delphi-ju za Windows.

Administracija sistema
Da bi se sprijeile katastrofe, osigurala sigurnost podataka i stabilan rad mree, neko mora da upravlja sistemom. U zaduenja jednog administratora spada: pravljnje rezervnih kopija podataka, kreiranje korisnikih naloga, konfiguracija sistema prema specifinim potrebama. To je najodgovorniji korisnik jer posjeduje dozvole za pristup svim djelovima sistema. Mnoge stvari se mogu automatizovati kreiranjem shell skripti. Najjedostavnije reeno, to je datoteka koja sadri listu komandi koje treba izvriti. Komandna ljuska uitava tu listu i izvrava komande jednu po jednu. Za mnoge procese, tako, nije potrebno pisati posebne programe, ukoliko odgovarajue ljuska sadri sve komande koje nam trebaju. Pomou njih se konfigurie sistem prilikom podizanja, a za svakog korisnika je mogue promjeniti postavke ako se skripta izvrava pri logovanju.
STRANA 14

uvod u UNIX

Linux

Damir Ribi IVG1

POGLAVLJE

Linux
Nastanak projekta
U poetku bijae Minix. To je bio jedan mali operativni sistem, napravljen za eksperimentalne potrebe od strane poznatog helsinkog profesora raunarskih nauka dr Andrew Tannebaum-a; inae u sklopu GNU projekta zapoetog osamdesetih (GNU znai GNU is Not Unix) iji je cilj bio da promovie upotrebu slobodnog softvera,to podrazumjeva dostupnost izvornog koda kojeg korisnici mogu slobodno mjenjati prema potrebama (to veina dananjih softverskih korporacija ne dozvoljava ) , a po mogunosti da budu i besplatan. Tada je student po imenu Linus Torvalds sa pomenutog helsinkog univerziteta objavio legendarnu poruku na jednoj news grupi: Zdravo svima tamo koji koristite Minix.Radim jedan (besplatan) operativni sistem(To je samo hobi. Nee biti nita veliko i profesionalno...) Nazvao sam ga Linux. Nije ni slutio da e mu se pridruiti hiljade programera i da e Linux stasati u stabilan i pouzdan sistem sa instalacijama na desetinama miliona raunara irom svijeta. Dakle, Linux je klonirana verzija Unixa; funkcionie na slian nain,komande se identine, jedino je izvorni kod drugaiji. Stotine hiljada programera razvija i danas Linux ne samo zbog eksperimentalnih pobuda, ve i zbog injenice da su jo krajem sedamdesetih sve kompanije koje su razvijale Unixe naplainale licencu za koritenje. Filozofija Linuxa se zasniva na GNU copyleft licenci, koja podrazumjeva: besplatno i potpuno slobodno korienje, prodaju, umnoavanje, mijenjanje izvornog koda za doslovno sve korisnike ( iako danas postoje i komercijalne verzije ). To je danas velika prijetnja korporacijama koje skupo naplauju softver ( Microsoft, npr.). Iako postoji veliki broj verzija Linuxa, na svakoj od njih se mogu izvravati programi sa razliitih distribucija, zato to imaju identinan kernel (jezgro), ije nove verzije izlaze stalno, pod verifikacijom Linusa. Ko se osjea sposobnim se moe pridruiti armiji programera razasutih po cijelom svijetu koji volonterski izrauje nove i poboljava postojee dijelove i aplikacije Linuxa.

STRANA 15

uvod u UNIX

Linux

Damir Ribi IVG1

Verzije i upotreba
Danas postoji veliki broj raznih verzija ili distribucija Linuxa. Mnoge od njih su besplatne i mogu se skinuti sa Interneta, zatim najpopularniji metod preko CD medija, a zajednika osobina im je da sadre najnoviju verziju kernela, komandnu ljusku ( bash i bourne ), zatim grafiko korisniko suelje, mnoge aplikacije i programe. Veina distribucija dolazi sa besplatnim grafikim sueljem, koji se sastoji iz dva dijela : besplatne verzije servera ( posluitelja ) XWindows pod nazivom XFree86 na koji se naslanja grafika ljuska u vidu nekog od Desktop menadera (fluxbox, gnome, icewm, twm, wmaker, xfce ); definitivno najbolji i najpopularniji KDE ; koji funkcionie na slian nain kao Windows, samo je bolje i ljepe uraen :-). Mnoge imaju i besplatne kancelarijske programe, neovisne o distribuciji ( OpenOffice ili KOffice mogu bez problema da zamjene npr. komercijalni Microsoft Office). Linux nije mogao dugo izdrati da ne postane komercijalan, takve su upravo najbolje i najpopularnije verzije; dakle ipak se plaa. Meutim, dosljedno GNU pokretu, skoro sve popularne distribucije mogu se ipak donekle besplatno koristiti,na primjer: osnovna verzija je besplatna, a ako elite punu, e to ete platiti. Ili dogovor tipa da e dotinu verziju koristiti jedno fiziko lice na jednom raunaru za neprofitne svrhe, dok kompanije moraju da plate. Takoe mnogi proizvoai softvera uz svoje programe isporuuju i svoju verziju Linuxa, ako vam treba platforma ( Corel Linux ,npr.) . Najpoznatije distribucije su SuSE i RedHat. Ovaj drugi npr., dolazi na nekoliko CD-ova sa mnotvom aplikacija , kako za radne stanice ( OpenOffice, npr. ) , tako i za servere ( Apache web-server, FTP, Mail, News, DNS ...), do najsitnijih uslunih programa i igara. Instalacija je uglavnom jedostavna; potrebno je napraviti i formatirati odreenu particiju na hard disku , a mnoge instalacije kreu pomou boot diskete ( koja se pravi pomou programa rawrite ) , a sav daljnji postupak se odvija uz pomo grafiki oblikovanih dijaloga i opcija. Za lagan poetak najbolje je probati KNOPPIX ,CD na koji je pomou tzv. cloop kompresije u realnom vremenu smjeteno nevjerovatnih 1,8 GB softvera u vidu Debian Linux distribucije, aplikacija ( office, grafika, ama sve),skoro stotinu igara. Jedino je potrebno u BIOS-u podesiti sekvencu da se ita prvo sa CD-a. Knoppix nije neophodno instalirati; on se podigne sa pomenutog CD-a pri emu nije neophodno bilo ta da se zapisuje na disk. Automatski prepoznaje i konfigurie skoro sav postojei hardver (odakle toliki driveri ? ; koliko muenje je u Windowsu instalisati i najobiniju karticu !). Kao i kod veine Linuxa, pored ext2 datotenog sistema postoji i vfs (virtuelni file sistem ) koji moe prepoznati i koristiti druge datotene sisteme ( Windows-ov FAT32 i NTFS ,npr.) , tako da dokumente koje ste radili u Windowsu moete doraditi u Knoppixu, gledati slike, sluati muziku ...
STRANA 16

uvod u UNIX

Linux

Damir Ribi IVG1

Moemo slobodno rei da je Linux postao najpopularnija (besplatna) verzija Unixa. Od samih poetaka koristili su ga mnogi hakeri , ljudi koji se raunarstvom bave iz hobija i ovde vide priliku da proniknu u najdublje tajne sistema, a blagodarei dostupnosti izvornog koda mogu da mijenjaju sistem. Unix vie nije privilegija zaposlenika velikih korporacija; sada svaki ovjek u svojoj kui moe da ga naui koristiti. Ogromna podrka u smislu velikog broja programa za doslovno sve i svata kao i stabilan grafiki sistem su napravljeni potpuno volonterski tako da se pitamo da li komercijalni softver (i Microsoft) zaista zasluuju toliko novca ? Linux koristi veliki broj firmi u komercijalne svrhe zbog jako niske cijene, kompatibilnosti i programske podrke, npr. kao NASA (slike planeta velike rezolucije) , Vlada N.R. Kine (administracija ) itd.. Procjenjuje se da 25% WEB servera koristi Linux; veliki broj mrenih servera, ak i bazne stanice za mobilnu telefoniju, superraunari, komercijalne baze podataka, mnogi univerziteti, manje kompanije, i naravno , obini smrtnici. Mnogi programi su rekompilovani sa drugih op.sistema da rade pod Linuxom; iako ih je mogue i direktno korisiti pomou raznih emulatora (npr. VINE, koji moe pokrenuti veinu DOS/Windows .exe programa). Jedino to bi se moglo nazvati nedostatkom je to veliki broj dananjih igara nema podrku za Linux, u svemu ostalom je Linux bolji od Windowsa ! Svijet softvera je postao mnogo kreativniji i napredniji, a korporacije pritisnute besplatnou Linuxa proizvode kvalitetnije programe, a uz naruenu Windows/Intel hegemoniju, svijet vie nee biti isti.

STRANA 17

KRAJ

uvod u UNIX

Zavrna rije

Damir Ribi IVG1

Umjesto prologa epilog


Ovaj skromni prirunik ima za namjeru da uputi prosjenog ovjeka, korisnika raunara u osnove pojmove vezane za Unix kao prilino sloen operativni sistem. Tako, neke stvari koje veina korisnika raunara zna su veoma jednostavno objanjene, naravno u najkraem moguem obliku, da ih mogu razumjeti ljudi koji tek ulaze u svijet informatike, to nekim iskusnijim itaocima moe biti dosadno. Opet, sa druge strane, dotaknute su mnoge napredne funkcije sistema koje nije lako odmah razumjeti, recimo bez prethodnog iskustva steenog radom na Unixu. Takvi pojmovi nisu adekvatno obraeni, ali korisnik uz nekoliko pokuaja, malo snalaljivosti ili uz koritenje druge literature moe uspjeno da ih savlada. Veliku potekou je predstavljao nedostatak prostora, jer je sve moralo biti izloeno u petnaestak stranica, a tenja je bila da se to vie informacija prezentuje kako bi bilo ko mogao da na mala vrata ue u veliki svijet Unixa. Zato ponekad izlaganje djeluje konfuzno i nemetodino, ali je upravo i namjera bila da se jednom reenicom kae pet stvari ,da se ne troi dragocijeno vrijeme itaoca na dugaka objanjenja. Upravo ovakva koncepcija omoguava najirem krugu korisnika da se upozna sa materijom, tako da je ovo relativno brz i lak nain osposobi bilo koga da se snae u Unix okruenju, a naravno da je za profesionalno koritenje neophodno potraiti struniju literaturu na nekoliko stotina stranica. Neki pojmovi mogu zbuniti jer su samo pomenuti, ili im je znaenje samo sugerisano; dovoljno je znati da neke stvari postoje, da smo upueni, a ukoliko se ukae potreba za istim, lako je potraiti detaljnija objanjenja drugdje. Za svaki pojam naznaeni su svi termini koji se koriste u naem jeziku, dok su koriteni oni koji su najvie u upotrebi, a za one termine koji ne postoje kod nas uinjeni su maksimalni napori da se to kvalitetnije prevedu. Za svaki pojam isto su navedeni originalni termini ( na engleskom, u zagradama ). Svi komentari, kritike i sugestije su dobrodoli, a ukoliko se ukae potreba bie napisan opirniji prirunik. BILJEKA O PISCU
Damir Ribi, inae uenik etvrtog razreda opte gimnazije je roen 1985 godine u Jajcu, pored ipova gdje je i sad jo uvijek iv. U najranijoj mladosti pokazao je veliki talenat i interesovanje za sve prirodne i tehnike nauke; prvi program na raunaru napisao je ve sa osam godina. Redovan uesnik mnogih republinih i meudravnih takmienja iz fizike; povremeno iz matematike, zatim raznih konkursa za patente, dizajn i slino. Autor mnogih lanaka i eseja. U slobodno vrijeme bavi se elektronikom, lan radioamaterskog saveza. Iako strogi nauno-tehnokratski empirista po opredjeljenju, iz hobija prati aktuelna zbivanja i uestvuje u mnogim raspravama vezanim za filozofiju, sociologiju, politiku ekonomiju, i savremenu psihologiju.

Piite mi puevom potom na: Staro ipovo bb, 70270 ipovo, R.S., BiH ili elektronskom na cephalon@teol.net .
DODATAK A

uvod u UNIX

INDEX

Damir Ribi IVG1

SADRAJ:
POGLAVLJE 1 : UVOD ta je to Unix? 1 Istorijat Unixa 2 Upotreba Unixa 3 POGLAVLJE 2 : STRUKTURA SISTEMA Datoteke i direktorijumi 4 Datoteni sistem 5 Dozvole za pristup direktorijima 6 POGLAVLJE 3 : RAD SA KOMANDAMA Osnovne komande 7 Komande za rad sa datotekama i direktorijima 8 Kretanje kroz direktorije 9 Kopiranje i pomjeranje 10 Ostale komande 11 POGLAVLJE 4 : OSTALE MOGUNOSTI Koritenje parametara 12 Preusmjeravanje procesa 13 Praenje procesa 13 Programiranje i administracija 14 POGLAVLJE 5 : LINUX Nastanak projekta 15 Verzije 16 Upotreba 17 DODACI

KORITENA LITERATURA :
1. 2. 3. 4. Introducing Unix System V ; Rachel Morgan, Henry McGilton RedHat Linux ; Jack Tackett Osnove rada na Unix operativnim sistemima ; Sran Rajevi
MAN stranice Unixa, lanci strunih asopisa i web stranice vezane za temu .

DODATAK B

You might also like