Sistemul de fisiere in Linux

Ca sa folositi orice sistem Linux, trebuie prima data sa intelegeti cum este organizat sistemul de fisiere in Linux. Fiecare fisier Linux este situat intr-o colectie numita director. Directoarele sunt ca si carpetele din sistemele Windows sau Mac. Directoarele formeaza o ierarhie sau arbore (tree): un director poate contine alt director, numit subdirector, care poate contine la randul lui alte fisiere si subdirectoare, si asa mai departe, pana la infinit. Directorul din varful ierarhiei este numit director root si este reprezentat de un slash ( / ).

Ne referim la fisiere si directoare folosind “nume si slash-uri”, sintaxa care este numita in engleza path(traducerea romaneasca fiind “cale “). O sa folosesc in continuare denumirea de “path”. De exemplu acesta este un path:

/unu/doi/trei/patru

care se refera la un director root /, care contine un director unu , care contine un director doi, care contine un director trei, ce contine un fisier sau un director final, patru. Daca path-ul incepe cu directorul root este numit paht absolut , daca nu, este un path relativ.

Cand rulam un shell, shell-ul se afla intr-un anumit director (in modul abstract).Sa presupunem ca suntem logati intr-un sistem Linux cu un user numit “adrian”, daca rulam un shell acesta o sa fie “situat” in directorul /home/adrian. Cand creem un nou user automat se creaza si un director /home/numeleuserului, care o sa fie directorul de lucru al userului. Cel mai simplu mod de a vedea unde este “situat” shell-ul intr-un moment dat este cu comanda pwd. Putem avea deschise cate shell-uri dorim, fiecare din ele putand fi “situate” in alt director pentru a ne face lucrul mai usor. Exemplu practic: suntem logati intr-un sistem Linux cu un user numit “linuxboy”. Deschidem un terminal si executam:

$ pwd (print working directory – ne arata directorul acutal)

o sa avem ca rezultat:

/home/linuxboy

Sa presupunem ca in subdirectorul linuxboy avem un alt subdirector numit “mystuff”. Deschidem un alt terminal si ne schimbam de director cu comanda:

$ cd mystuff

acum suntem “situati” in directorul mystuff. Executam din nou:

$ pwd

iar rezultatul este:

/home/linuxboy/mystuff

Acum avem doua shell-uri deschise, fiecare din ele fiind situate intr-un director diferit: /home/linuxboy si, respectiv, /home/linuxboy/mystuff.

Directoarele home

Fisierele personale ale userilor se gasesc in directorul /home (pentru useri normali) si in directorul /root (pentru superuser). Directorul tau personal este de obicei /home/userul-tau, ex: /home/adrian, /home/goodboy, etc.

Ca sa ne intoarcem automat in directorul nostru /home executam in terminal comanda cd (change directory) fara nici un parametru.

Cum spuneam Linux este un sitem multiuser, daca vrem sa ne situam in directorul /home al unui user in particular o putem face cu comanda:

cd ~“user”.

Ex:

$ cd ~adrian ( o sa ne situeze in directorul /home al userului adrian)

ca sa vedem rezulatatul folosim din nou comanda pwd:

$pwd (comanda “print working directory”)

iar rezultatul:

/home/adrian

Directoare de sistem

Un sistem Linux poate avea mii de directoare de sistem. Aceste directoare contin fisiere ale sistemului operativ, aplicatii, documente, practic orice in afara de fisiere private apartinand userilor (care de obicei le gasim in /home). Daca nu esti un administrator de sistem practic o sa intri foarte rar in majoritatea din aceste directoare – dar cu un pic de cunostinte poti sa intelegi sau sa ghicesti scopul lor.

Adesea numele directoarelor de sistem contin trei parti, pe care noi le vom numi scop, categorie si aplicatie (nu este ceva standard dar te vor ajuta sa intelegi mai bine unele lucruri).

Luam ca exemplu directorul: /usr/local/share/emacs

/usr/local ne arata scopul (fisiere de sistem instalate local)

/share ne arata categoria- de obicei documentatie

/emacs ne arata aplicatia – emacs este un editor de text

Poti explora sitemul de directoare cu comanda ls. Exemplu:

ls -l / , iti va lista toate subdirectoarele al directorului root (/).

ls -l /bin, iti va lista subdirectoarele ale subdirectorului /bin.

Categorii de directoare

O categorie ne spune tipul fisierelor aflate intr-un director. De exemplu, daca categoria este bin, putem fi siguri ca acel director contine programe.

Categoria programe:

bin programe ( de obicei fisiere binare)

sbin programe ( de obicei fisiere binare) destinate a fi rulate de superuser, root

lib librarii de cod utilizate de programe

libexec programe folosite de alte programe, un fel de “librarii de programe executabile”

Categoria documentatie:

doc documentatie

man fisiere de documentatie (manuale) care sunt folosite de programul man; de obicei aceste fisiere sunt comprimate

share fisiere specifice apartinand programelor, cum ar fi exemple de configuratie sau instructiuni de instalare

Categoria configurarea sistemului

etc fisiere de configuratie a sistemului

init.d fisiere de configuratie a felului in care porneste Linux

Categoria programare

include fisiere pentru programare

src codul sursa ale programel

Categoria web

cgi-bin scripturi/programe care se executa in paginile web

html pagini web

www pagini web

Categoria hardware

dev fisiere pentru componente hardware: hard disk, cd-rom , etc.

mnt puncte de montaj: directoare ce proportioneaza acces la hard disk, cd-rom, usb, etc.

Categoria logs

var fisiere specifice ale computerului, create si actualizate pe masura ce sistemul ruleaza

log fisiere de log, in ele se inregistreaza tot ce se intampla in sistem

mail contine fisiere cu mail-urile primite

run fisiere PID, contin ID-urile de la procesele active

tmp director de stocare temporala pentru programe sau useri

proc informatii despre sistem in timp real

Cam atat despre sistemul de fisiere, in continuare o sa aruncam o privire asupra unui aspect important al fisierelor in Linux: securitatea.

Lasă un Răspuns