Stablo direktorija
-
višekorijenski operacijski sustav za više više particija ima više korijenskih direktorija
- primjerice, operacijski sustav Windows particije označava kao
C:\,D:\,E:\, ...
- primjerice, operacijski sustav Windows particije označava kao
-
jednokorijenski operacijski sustav za više particija imaju jedan korijenski direktorij
- operacijski sustavi slični Unixu mogu imati particije u direktorijima
/,/home,/media/usbdisk, ...
- operacijski sustavi slični Unixu mogu imati particije u direktorijima
Uloga pojedinih direktorija u sustavu
-
Filesystem Hierarchy Standard definira naziv u ulogu direktorija u datotečnom sustavu
- dugo vremena je bila aktualna verzija 2.3, siječanj 2004., trenutna aktualna je verzija verzija 3.0, ljeto 2012.
- više informacija možete pronaći na stranici s dokumentima o FHS
-
/bin,/sbin,/lib-- izvršne datoteke i bibliotečne datoteke- izvršne datoteke napravljene iz izvornog koda koji ima funkciju
main() - bibliotečne datoteke napravljene iz izvornog koda koji nema funkciju
main()
- izvršne datoteke napravljene iz izvornog koda koji ima funkciju
-
/devsadrži u sebi uređaje /etcsadrži konfiguracijske datoteke -- one određuju kako se programi ponašaju/root,/home/<ime_korisnika>su redom root direktorij administratora, kućni direktoriji ostalih korisnika/proc,/syssadrže u sebi inforamcije o sustavu (hardveru)/lost+foundsadrži dijelove datoteka koje su pronađene u datotečnom sustavu prilikom oporavka od pada sustava/media,/mntsadrži direktorije putem kojih je dostupna vanjska memorija (USB, fotoaparat, digitalna kamera..)/optunutar njega su poddirektoriji, najčešće sa komercijalnim programima koji se instaliraju drugačije od ostalog softvera/tmpsadrži privremene datoteke/varsadrži datoteke koje program koristi kod pokretanja (datoteke koje se mijenjaju dok program radi)-
/usr,/usr/localsadrži programe razdijeljene po poddirektoirjima/usr/bin,/usr/sbin,/usr/lib,/usr/share- konvencija je da se softver koji se instalira putem upravitelja paketima (sustav sličan Apple Store-u i Google Play-u) postavlja u
/usr, a softver koji administrator instalira mimo upravitelja paketima u/usr/local
- konvencija je da se softver koji se instalira putem upravitelja paketima (sustav sličan Apple Store-u i Google Play-u) postavlja u
Zadatak
- Izlistajte sve obične i sakrivene direktorije i datoteke u vašem kućnom direktoriju.
- Izlistajte sve direktorije u
/homedirektoriju. Što vidite? -
Objasnite što se nalazi u sljedećim direktorijima:
/home/student12/usr/include/c++/4.6/dev/input/etc/acpi
(Uputa: podsjetite se koje je značenje kratice ACPI.)
Rad s direktorijima, naredbe pwd i cd
pwdispisuje putanju do radnog direktorija-
cdmijenja radni direktorij u dani- bez argumenata vraća vas u kućni direktorij
-
<Tab>-- kompletiranje imena datoteka i direktorija- postoji razlika između
<Tab>i<Tab><Tab> - na sličan način kompletiraju se imena naredbi
- na sličan način kompletiraju se nazivi parametara nekih naredbi (u novijm verzijama
bashljuske, datoteka/etc/bash_completioni direktorij/etc/bash_completion.d)
- postoji razlika između
Zadatak
Isprobajte sljedeće naredbe i objasnite što rade:
cdcd .cd ..cd ~cd -cd ../..cd ./././..cd ../.././.cd ../../../../../..
.referira na trenutni direktorij..referira na direktorij iznad trenutnog../..referira na direktorij iznad direktorija iznad trenutnog (tako možemo i dalje)
Naredbe mkdir i rmdir
mkdirstvara direktorij s danim imenomrmdirbriše (prazan) direktorij danog imena
Zadatak
-
U Vašem kućnom direktoriju napravite predloženu strukturu direktorija:
studentXY ---------- Ispiti ------------- Ispit1 -------- 15102012 | | | |----- Ispit2 | |--------- Kolokviji ---------- Kolokvij1 | | | |----- Kolokvij2 ----- Rjesenja | |--------- Seminari | |--------- DZ ----------------- Grafovi -
Uđite u direktorij
Ispitii pokušajte izbrisati direktorijIspit1. Što se događa? - Pozicionirajte se u direktorij
Kolokvijii u jednoj naredbi pokušajte izbrisati sve poddirektorije koji se ondje nalaze. - Vratite se do direktorija
Seminarii uđite u njega. Pokušajte ga izbrisati. Što se događa? Zašto? - Otiđite do svog kućnog direktorija i od tamo pokušajte izbrisati direktorij
15102012. Zašto ga ne možete izbrisati? - Uđite u direktorij
Kolokviji iz njega pokušajte izbrisati direktorijDZ. Možete li to učiniti? Zašto?
Dodatni zadatak
- U svom kućnom direktoriju stvorite poddirektorij
trnoruzica. Uđite u taj direktorij. - Stvorite direktorije
mikimausiminimaus. - Uđite u direktorij
mikimaus. - Probajte sada izbrisati direktorij
minimaus. Objasnite zašto to ne možete. - Vratite se u direktorij
trnoruzicai izbrisite direktorijminimaus. - Isprobajte naredbe
cd -,cd ../.icd -/..te objasnite što rade.
Apsolutno i relativno referenciranje
-
/home/vedran/radnidir- apsolutno referira na
radnidir, radi od svugdje - apsolutno referenciranje kreće od korijenskog direktorija i ide do traženog direktorija, uvijek započinje sa
/
- apsolutno referira na
-
radnidir- relativno referira na
radnidir, radi samo kad se nalazimo u direktoriju/home/vedran - relativno referenciranje kreće od trenutnog direktorija i ide do traženog direktorija, nikad ne započinje znakom
/
- relativno referira na
Zadatak
-
Izlistajte kućni direktorij korisnika
prof:- apsolutnim referenciranjem iz svojeg kućnog direktorija,
- apsolutnim referenciranjem iz korijenskog direktorija,
- relativnim referenciranjem iz svojeg kućnog direktorija,
- relativnim referenciranjem iz korijenskog direktorija.
-
Objasnite zašto prva dva dijela imaju isto rješenje.
- Koji je vaš kućni direktorij na računalu na kojem trenutno radite?
- U kojem se direktoriju nalazi moj kućni direktorij?
- U kojem se direktoriju nalazi vaš kućni direktorij, a u kojem vaš
homedirektorij? - Imate li pristup kućnom direktoriju korisnika
student08? Izlistajte sadržaj neke njegove datoteke.
Rekurzivnost u radu s direktorijima i datotekama
-
ls -Rradi rekurzivno izlistavanje- izlista direktorij i njegove poddirektorije
- na sličan način radi brisanje direktorija u kojem postoje poddirektoriji i datoteke
Zadatak
- Koristeći naredbu
lsizlistajte rekurzivno svoj kućni direktorij. -
Izlistajte rekurzivno sljedeće direktorije:
/usr,/usr/local(ovaj direktorij izlistajte dva puta: prvi put koristeći relativno, a drugi put apsolutno referenciranje).
-
Što se događa kada umjesto parametra
-Rkoristite parametar-r? Isprobajte.
Pitanja za ponavljanje
- Navedite po jedan primjer za jednokorijenski i višekorijenski operacijski sustav.
- Što je FHS?
- Prisjetite se koja je uloga pojedinih direktorija u datotečnom sustavu.
- Postoji li razlika između kućnog i
homedirektorija korisnika? - Na koji način možemo kompletirati nazive direktorija i datoteka?
- Kako izglda referenca za trenutni (radni) direktorij? Kako za onaj jednu hijerarhijsku razinu više?
- Ponovite razliku između apsolutnog i relativnog referenciranja.
- Ako se nalazite u vlastitom kućnom direktoriju, napišite relativnu i apsolutnu adresu koja će vas odvesti do korijenskog direktorija.
- Čemu služi rekurzivno izlistavanje direktorija?
- Kakve informacije daje naredba
pwd?
Author: Vedran Miletić, Vanja Slavuj, Sanja Pavkov