50
Uvod u UNIX Administracija operacijskih sustava AOS2 AOS2 1 Uvod u Unix

Uvod u Unix

Embed Size (px)

DESCRIPTION

Uvod u Unix,Predavanje za AOS2

Citation preview

Page 1: Uvod u Unix

Uvod u UNIX

Administracija operacijskih sustava AOS2

AOS21 Uvod u Unix

Page 2: Uvod u Unix

Operacijski sustav - UNIX

Operacijski sustav je program koji kontrolira resurse računala

UNIX je višekorisnički, višezadaćni operacijski sustav– Djelovi UNIX-a

Kernel (jezgra) Shell (ljuska) File system (datotečni sustav) Aplikacijski programi

AOS22 Uvod u Unix

Page 3: Uvod u Unix

Kernel (jezgra)

Kernel je centralni dio operacijskog sustava koji se učitavaa pri podizanju sustava, a upravlja računalnim sklopovljem.

Poznavanje jezgre operacijskog sustava nije nužno za korištenje računala

AOS23 Uvod u Unix

Page 4: Uvod u Unix

Shell (ljuska)

Ljuska je interpreter naredbi. Njezini zadaci su:– Primanje korisničkih naredbi– Pokretanje korisničkih programa i komunikacija sa

jezgrom– Prikazivanje rezultata na zaslonu

Prilikom spajanja na računalo, po uspješnoj identifikaciji, nalazimo se u početnoj ljusci

AOS24 Uvod u Unix

Page 5: Uvod u Unix

File system (datotečni sustav)

UNIX datotečni sustav organiziran je u obliku stabla (tzv. Datotečno stablo)

/ (root)

/bin /home /usr /tmp/var/etc

/home/user1 /home/user2 /home/user3

AOS25 Uvod u Unix

Page 6: Uvod u Unix

Korisnički programi

Najčešće funkcije korisničkih programa:– Upravljanje datotekama– Uređivanje teksta– Mrežne usluge– Itd.

UNIX korisnički programi su modularni. Pojedinačni programi mogu se udruživati u veće cjeline

AOS26 Uvod u Unix

Page 7: Uvod u Unix

Tipovi datoteka

Obične datoteke– Koriste se za spremanje informacija raznog tipa

(tekst, slike, programi, itd.) Direktoriji

– Točke grananja datotečnog stabla, sadrže druge datoteke (uključujući druge direktorije)

Simbolički linkovi– Simbolički link je datoteka koja pokazuje na neku

drugu datoteku

AOS27 Uvod u Unix

Page 8: Uvod u Unix

Tipovi datoteka

Specijalne datoteke– Točke u datotečnom sustavu koje predstavljaju

hardwerske uređaje (diskovi, printeri, ...) Socket

– Koriste se za komunikaciju među procesima, bilo lokalno ili putem mreže

FIFO– Slično kao socket, služi za lokalnu komunikaciju

među procesima

AOS28 Uvod u Unix

Page 9: Uvod u Unix

Tipovi datoteka

Na UNIX-u vrijedi princip:

Sve je datotekaSve je datoteka– Normalne datoteke– Direktoriji– Komunikacijske pristupne točke– Sklopovlje računala

AOS29 Uvod u Unix

Page 10: Uvod u Unix

Korisnički račun (account)

Svaki korisnik ima svoj korisnički račun. – Korisnički račun čini skup resursa računala koje

korisnik može koristiti

Identifikacija korisnika:– username (korisničko ime, login)– password (lozinka)

AOS210 Uvod u Unix

Page 11: Uvod u Unix

Prijava na UNIX računalo

SunOS 5.7

login:dkrst

System Password:

Last login: Tue Oct 14 19:43:02 from adria.fesb.hr

Sun Microsystems Inc. SunOS 5.7 Generic October 1998

Tue Oct 14 19:47:13 MET DST 2003

/home/dkrst

marjan.fesb.hr>

AOS211 Uvod u Unix

Page 12: Uvod u Unix

Upravljanje ljuskom

Nakon uspješnog spajanja na sustav, korisnik se nalazi u korisničkoj ljusci

Format UNIX naredbe:

/> naredba [opcije] [argumenti]

AOS212 Uvod u Unix

Page 13: Uvod u Unix

passwd - promjena lozinke

marjan.fesb.hr> passwd

passwd: Changing password for dkrst

Enter login password:

New password:

Re-enter new password:

passwd (SYSTEM): passwd successfully changed for dkrst

marjan.fesb.hr>

AOS213 Uvod u Unix

Page 14: Uvod u Unix

Odjava sa UNIX računala

Nakon završetka rada, potrebno se odjaviti sa UNIX računala (logout ,exit)marjan.fesb.hr> logout

Connection closed by foreign host. Odjavu je moguće napraviti istovremenim

pritiskom na tipke CTRL i D (^D)

AOS214 Uvod u Unix

Page 15: Uvod u Unix

ls – pregled sadržaja direktorija

Naredba ls služi za pregled sadržaja direktorija– Opcije –al daju detaljan ispis sadržaja direktorija

marjan.fesb.hr> ls -al

total 5472

drwx------ 3 dkrst other 512 Feb 10 2003 .

drwx------ 4 dkrst other 512 Feb 3 2003 ..

drwx------ 7 dkrst other 4608 May 9 2001 HTTPClient

-rw-r--r-- 1 dkrst other 2785280 Feb 3 2003 HTTPClient.tar

lrwxrwxrwx 1 dkrst other 9 Feb 10 2003 robots -> ../robots

marjan.fesb.hr>

AOS215 Uvod u Unix

Page 16: Uvod u Unix

Struktura direktorija

Svaki direktorij može sadržavati datoteke raznih tipova uključujući i druge direktorije

drwx------ 3 dkrst other 512 Feb 10 2003 .

drwx------ 4 dkrst other 512 Feb 3 2003 ..

drwx------ 7 dkrst other 4608 May 9 2001 HTTPClient

-rw-r--r-- 1 dkrst other 2785280 Feb 3 2003 HTTPClient.tar

Svaki direktorij sadrži pokazivač na samog sebe i Svaki direktorij sadrži pokazivač na samog sebe i na svoj roditeljski direktorijna svoj roditeljski direktorij

Radni direktorij

Roditeljski direktorij

AOS216 Uvod u Unix

Page 17: Uvod u Unix

pwd – radni direktorij

Naredbom pwd dobijamo apsolutni put do trenutnog radnog direktorijamarjan.fesb.hr> pwd

/home/dkrst/java/packages

Apsolutni put uvijek počinje od root direktorija (/)

AOS217 Uvod u Unix

Page 18: Uvod u Unix

cd – promjena radnog direktorija

Radni direktorij možemo zadati apsolutno ili relativno (u odnosu na trenutni radni direktorij)

marjan.fesb.hr> cd /home/dkrst/java/home/dkrst/javamarjan.fesb.hr> cd robots/home/dkrst/java/robotsmarjan.fesb.hr>

AOS218 Uvod u Unix

Page 19: Uvod u Unix

mkdir – kreiranje direktorija

marjan.fesb.hr> mkdir vjezba1marjan.fesb.hr> cd vjezba1/home/dkrst/tmp/vjezba/vjezba1marjan.fesb> ls -altotal 4drwx------ 2 dkrst other 512 Oct 15 10:39 .drwx------ 3 dkrst other 512 Oct 15 10:39 ..marjan.fesb.hr>

Pokazivači na radni i roditeljski direktorij stvaraju se automatski

AOS219 Uvod u Unix

Page 20: Uvod u Unix

rmdir – brisanje direktorija

marjan.fesb.hr> ls -altotal 8drwx------ 3 dkrst other 512 Oct 15 10:51 .drwx------ 5 dkrst other 512 Oct 15 10:36 ..-rw------- 1 dkrst other 30 Oct 15 10:37 dat1.txtdrwx------ 2 dkrst other 512 Oct 15 10:39 vjezba1marjan.fesb.hr> rmdir vjezba1marjan.fesb.hr> ls -altotal 6drwx------ 2 dkrst other 512 Oct 15 10:51 .drwx------ 5 dkrst other 512 Oct 15 10:36 ..-rw------- 1 dkrst other 30 Oct 15 10:37 dat1.txtmarjan.fesb.hr>

AOS220 Uvod u Unix

Page 21: Uvod u Unix

Skraćene oznake direktorija

. - tekući radni direktorij

.. - roditeljski direktorij

~ - home direktorij korisnikamarjan.fesb.hr> cd ~

marjan.fesb.hr> pwd

/home/dkrst

marjan.fesb.hr> cd vjezba

marjan.fesb.hr> cd ..

marjan.fesb.hr> pwd

/home/dkrst

AOS221 Uvod u Unix

Page 22: Uvod u Unix

cp – kopiranje datoteka

Naredba cp služi za kopiranje datoteka i direktorijamarjan.fesb.hr> ls

dat1.txt

marjan.fesb.hr> cp dat1.txt dat2.txt

marjan.fesb.hr> ls

dat1.txt dat2.txt

marjan.fesb.hr>

AOS222 Uvod u Unix

Page 23: Uvod u Unix

mv – premještanje datoteka

Naredba mv služi za premještanje (i promjenu imena) datoteka i direktorijamarjan.fesb.hr> ls

dat1.txt dat2.txt

marjan.fesb.hr> mv dat2.txt nova.txt

marjan.fesb.hr> ls

dat1.txt nova.txt

marjan.fesb.hr>

AOS223 Uvod u Unix

Page 24: Uvod u Unix

rm – brisanje datoteka

marjan.fesb.hr> ls

dat1.txt nova.txt

marjan.fesb.hr> rm nova.txt

rm: remove nova.txt (yes/no)? y

marjan.fesb.hr> ls

dat1.txt

gustav.csc.unist.hr>

Brisanje datoteke je neopozivo!Brisanje datoteke je neopozivo!

AOS224 Uvod u Unix

Page 25: Uvod u Unix

man – pomoć za UNIX naredbe

Naredba man daje pomoć za navedenu UNIX naredbu/> man ls - pomoć za ls

/> man man - pomoć za man

Naredba man vrlo je važna i treba je koristiti uvijek kada trebamo pomoć za neku naredbu!

AOS225 Uvod u Unix

Page 26: Uvod u Unix

Prava pristupa datotekama

Vlasnik datoteke određuje prava pristupa– Svaka datoteka ima svog vlasnika– Prava pristupa mogu se zasebno definirati za

vlasnika datoteke, grupu korisnika kojoj vlasnik pripada, te za sve ostale korisnike sustava

Prava pristupa: Čitanje - r pisanje - w Izvršavanje - x

AOS226 Uvod u Unix

Page 27: Uvod u Unix

Prava pristupa datotekama

-rw-r--r-- 1 dkrst users r w x r w x r w x

vlasnik grupa ostaliPrimjer:

-rw-r--r--– vlasnik: pravo čitanja (r) i pisanja (w)– grupa: pravo čitanja (r)– ostali: Pravo čitanja (r)

AOS227 Uvod u Unix

Page 28: Uvod u Unix

chmod – promjena prava pristupa

Naredbom chmod vlasnik datoteke mijenja prava pristupa

chmod <prava> <datoteka> Prava pristupa moguće je zadati:

– apsolutno – simbolički

AOS228 Uvod u Unix

Page 29: Uvod u Unix

Apsolutna prava pristupa

Apsolutna prava pristupa:_ r w x r w x r w x 1/0 | 1/0 | 1/0 | 1/0 | 1/0 | 1/0 | 1/0 | 1/0 | 1/0 4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1

– Apsolutna prava pristupa dobivaju se pojedinačno za vlasnika, grupu i ostale korisnike zbrajanjem vrijednosti tri binarne znamenke koje određuju prava pristupa

chmod 0644 dat1.txt vlasnik: rw; grupa: r; ostali: r

AOS229 Uvod u Unix

Page 30: Uvod u Unix

Simbolička prava pristupa

• Dodavanje ili oduzimanje prava pristupa na osnovi simboličke oznake

u – vlasnikg – grupao – ostalia –svi korisnici

chmod ug+w dat1.txtdodavanje prava pisanja za vlasnika i grupuchmod o-w dat1.txtskidanje prava čitanja za ostale korisnike sustavachmod a+r dat1.txtdavanje prava čitanja za sve korisnike

AOS230 Uvod u Unix

Page 31: Uvod u Unix

Prava pristupa za direktorije

Pravo čitanja, pisanja i izvršavanja na direktoriju imaju slijedeće značenje:– r (čitanje) – pravo pregledavanja sadržaja

direktorija– w (pisanje) – pravo izmjene sadržaja direktorija– x (izvršavanje) – pravo otvaranja datoteka u

direktoriju

AOS231 Uvod u Unix

Page 32: Uvod u Unix

Pregledavanje sadržaja datoteke

Sadržaj datoteke moguće je dobiti korištenjem naredbe catmarjan.fesb.hr> cat dat1.txt

Ovo je prvi red teksta.

Drugi red...

marjan.fesb.hr>

Za datoteke koje ne stanu na jedan ekran mogu se koristiti naredbe more ili less

AOS232 Uvod u Unix

Page 33: Uvod u Unix

Povezivanje datoteka

ln - kreiranje pokazivača na datoteku

– Hard link:

/> ln dat1.txt dat2.txt– Soft link:

/> ln –s dat1.txt dat3.txt

AOS233 Uvod u Unix

Page 34: Uvod u Unix

Environment varijable

Environment varijable postavlja korisnik:– $HOME– $PATH– ...

Postavljanje vrijednost environment varijable:/> setenv PATH ./:$PATH

Environment varijable mogu se postaviti u inicijalizacijskim datotekama ljuske

AOS234 Uvod u Unix

Page 35: Uvod u Unix

Standardni ulaz i izlaz naredbi

Svaka UNIX naredba ima– stdin - standardni ulaz– stdout - standardni izlaz– stderr - standardni izlaz za greške

Uobičajena vrijednost za standardni ulaz je tipkovnica Uobičajene vrijednosti za standardni izlaz i standardni

izlaz za pogreške je korisnički terminal

AOS235 Uvod u Unix

Page 36: Uvod u Unix

Preusmjeravanje standardnog izlaza

Standardni izlaz naredbe (stdout) moguće je preusmjeriti u datoteku– Upiši u stvorenu datoteku: >– Dodaj na kraj postojeće datoteke: >>

/> ls –al > out.txt

/> pwd >> out.txt

/> cat out.txt - prikazuje sadržaj datoteke

AOS236 Uvod u Unix

Page 37: Uvod u Unix

Preusmjeravanje izlaza za greške

– Upiši u stvorenu datoteku: >&– Dodaj na kraj postojeće datoteke: >>&

Primjeri:/> ls –al >& err.txt – preusmjerava izlaz za greške

/> (cat err.txt > /tmp.txt) >& ~/err1.txt – Gornja naredba preusmjerava standardni izlaz u datoteku /tmp.txt (datoteka tmp u root direktoriju), te standardni izlaz za greške u datoteku ~/err1.txt (datoteka err1.txt u home direktoriju korisnika)

AOS237 Uvod u Unix

Page 38: Uvod u Unix

Preusmjeravanje ulaza naredbi

– Preusmjeravanje naredbi iz datoteke: </> cat > test

ls –al

<CTRL - D>

/> /bin/tcsh < test

total 24

drwxr-xr-x 2 dkrst 110 4096 Oct 21 19:26 .

drwx--x--x 21 dkrst fesb 4096 Oct 21 19:26 ..

-rw-r--r-- 1 dkrst 110 33 Oct 21 19:02 dat1.txt

-rw-r--r-- 1 dkrst 110 34 Oct 21 19:02 dat2.txt

-rw-r--r-- 1 dkrst 110 339 Oct 21 19:05 out.txt

-rw-r--r-- 1 dkrst 110 8 Oct 21 19:26 test

Oznaka za kraj datoteke

tcsh - ljuska

AOS238 Uvod u Unix

Page 39: Uvod u Unix

Ulančavanje naredbi

Više UNIX naredbi povezuju se u cjelinu uporabom operatora |

/> cat /etc/passwd | sort | less

aalagic:x:23722:111:Alen Alagic,student:/home/aalagic:/bin/csh

aalujevi:x:21419:111:Ana Alujevic,student:/home/aalujevi:/bin/csh

aandrun:x:20980:111:Adriano Andrun,student:/home/aandrun:/bin/csh

aarmanda:x:22378:111:Ante Armanda,student:/home/aarmanda:/bin/csh

....

AOS239 Uvod u Unix

Page 40: Uvod u Unix

Ulančavanje naredbi

Standardni izlaz naredbe s lijeve strane operatora | povezan je na standardni ulaz naredbe s desne strane operatora

Upotrebom operatore |& povezuju se standardni izlaz i standardni izlaz za greške naredbe sa lijeve strane operatora na standardni ulaz naredbe sa desne strane operatora

AOS240 Uvod u Unix

Page 41: Uvod u Unix

Procesi

Programi koji se izvršavaju u memoriji UNIX računala nazivaju se procesi– Svakom procesu dodjeljen je skup resursa računala

(dio procesorskog vremena, memorija, ...)– Proces je način na koji UNIX upravlja resursima

pokrenutog programa

AOS241 Uvod u Unix

Page 42: Uvod u Unix

Procesi

Parametri procesa:– PID – jedinstveni identifikacijski broj procesa– PPID – PID roditeljskog procesa– UID i GID – vlasnik i grupa procesa– EUID i EGID – efektivni UID i GID– Kontrolni terminal– Prioritet procesa

AOS242 Uvod u Unix

Page 43: Uvod u Unix

Procesi

Stanja procesa:Runnable - aktivni proces

Sleeping - proces koji čeka na resurse

Swapped - proces nije u memoriji

Zombie - završeni proces koji nemože biti izbrisan

Stopped - zaustavljeni proces (ne izvršava se)

AOS243 Uvod u Unix

Page 44: Uvod u Unix

ps – popis aktivnih procesa

/> ps - popis vlastitih aktivnih procesa PID TTY TIME CMD 2480 tty1 00:00:00 tcsh 2504 tty1 00:00:00 startx

/> ps -e - popis svih aktivnih procesa PID TTY TIME CMD 1 ? 00:00:06 init 2 ? 00:00:04 kflushd 3 ? 00:00:02 kupdate 4 ? 00:00:00 kswapd

...

AOS244 Uvod u Unix

Page 45: Uvod u Unix

kill – slanje signala procesu

/> kill –KILL 2480 - ubijanje procesa 2480

/> kill –HUP 2480 - resetiranje procesa 2480

man kill - pomoć za naredbu kill

AOS245 Uvod u Unix

Page 46: Uvod u Unix

Pokretanje procesa u pozadini

Korištenjem operatora & iza naredbe, proces se pokreće u pozadini

/> emacs& - pokretanje editora Emacs u pozadini

Nakon pokretanja procesa u pozadini, korisnik se nalazi u ljusci i može zadavati nove naredbe– Bez operatora &, nove naredbe ljuska prima tek

nakon završetka pokrenutog procesa

AOS246 Uvod u Unix

Page 47: Uvod u Unix

Editori

Editori u tekstualnom modu:– vi, pico, ...– Zgodni za brze promjene u datoteci

Editori u grafičkom modu:– Emacs, Xemacs, ...– Ugodniji za rad– Emacs ima ugrađenu podršku za različite formate

datoteka (C, C++, Java, Latex, ...)

AOS247 Uvod u Unix

Page 48: Uvod u Unix

Povezivanje sa udaljenim računalom

Program telnet služi za povezivanje i rad na udaljenom računalu

/> ssh [email protected]

Trying 161.53.166.3...

Connected to marjan.fesb.hr.

Escape character is '^]'.

Password:

AOS248 Uvod u Unix

Page 49: Uvod u Unix

Zadatak

1. U svome home direktoriju stvorite direktorij unix (naredba mkdir)

2. U direktoriju unix stvorite datoteku index.html i u nju upišite proizvoljan tekst. Upotrebite neki od ranije navedenih editora.

3. Svim korisnicima sustava dozvolite čitanje datoteke index.html (naredba chmod)

AOS249 Uvod u Unix

Page 50: Uvod u Unix

Zadatak

4. U svom home direktoriju stvorite direktorij public_html (ukoliko već ne postoji)

5. U direktoriju public_html stvorite simbolički link na direktorij unix (naredba ln –s)

6. Na direktorijima public_html i unix dajte pravo čitanja i izvršavanja svim korisnicima

7. U direktoriju unix stvorite direktorij vjezbe

AOS250 Uvod u Unix