Determinarea si lucrul cu drepturile asupra sistemului de fisiere



Capitolul 9: Determinarea si lucrul cu drepturile asupra sistemului de fisiere








Drepturile asupra fisierelor si directoarelor se pot determina utilizand comanda ls (list) cu optiunea -l (long), asa cum s-a aratat in paginile anterioare.


Nota: Atunci cand se lucreaza cu drepturile, cele mai importante elemente ale listarii sunt: tipul fisierului, drepturile, proprietarul, grupul si numele fisierului sau directorului.


Tipul fisierului: O liniuta (-) pe prima pozitie indica un fisier obisnuit. Un d indica un director.

Drepturile: 3 Seturi de drepturi: pentru- Utilizator (proprietar), Grup, Alti

Proprietarul: User (login) ID al utilizatorului care a creat fisierul sau directorul.

Grupul: Numele grupului caruia ii apartine proprietaru, stabilit de catre administratorul sistemului.

File Name: Numele fisierului sau directorului.


Interpretarea drepturilor

Read (r Fisierul poate fi afisat sau copiat. Continutul poate fi listat cu comanda ls. (Pentru a afisa o lista lunga (ls -l trebuie sa existe si dreptul de executie).


Write (w)- Continutul fisierului poate fi modificat. Fisierele pot fi sterse. (Pentru a adauga sau pentru a sterge fisiere trebuie sa existe si dreptul de executie).


Execute (x)- Fisierul poate fi executat (doar scripturile shell sau cele executabile). Permite de asemenea comenzii find sa caute printr-un director.


Nu- O liniuta (-) indica faptul ca acel drept nu exista.


Cele noua drepturi sunt divizate in trei seturi care corespund, in ordine, proprietarului, grupului, altora. Fiecare set de drepturi este alcatuit intotdeauna din secventa r (read), w (write), si apoi x (execute). Daca nu este permis un drept atunci apare semnul minus (-) in locul acestuia.


Schimbarea drepturilor

Drepturile asupra fisierelor si directoarelor pot fi schimbate utilizand comanda chmod (change mode). In mod normal drepturile standard pentru un fisier sau un director sunt adecvate pentru cele mai multe dintre nevoile de securitate. In mod standard, toate fisierele sunt create cu drepturi care permit categoriei publicului (altii) sa citeasca fisierul. Aceasta inseamna ca oricine intra in sistem poate vede continutul fisierului si il poate copia. Pentru fisierele unde nu se doreste acest lucru, sau in alte situati, se pot modifica drepturile .


Comanda chmod (change mode) este utilizata de proprietarul unui fisier sau de superuser pentru a modifica drepturile asupra fisierului.

Exista doua moduri de lucru cu comanda chmod: modul simbolic saur relativ) si modul octal (sau absolut).

Formatul general al comenzii chmod este prezentat in continuare.


chmod modul numefisier


  • Modul Simbolic - utilizeaza combinatii de litere si simboluri pentru a adauga sau pentru a indeparta anumite drepturi pentru o categorie de utilizatori.
  • Modul Octal - utilizeaza numere pentru a reprezenta drepturile asupra fisierelor.

Schimbarea drepturilor utilizand Modul Simbolic


Atunci cand se utilizeaza acest mod se lucreaza, de obicei, cu o categorie de utilizatori, desi se pot atribui drepturi deodata si tuturor categoriilor de utilizatori.

Portiunea "modul" din formatul comenzii chmod este formata din trei parti:

  • Cine- Categoria de utilizatori cu care se lucreaza: u = user, g = grup, o = altii sau a = toti
  • Op - Operatorul sau ce se doreste sa se faca: atribuie (=), indeparteaza (-), acorda (+)
  • Drepturile - Dreptul(rile) ce se atribuie - r = read, w = write or x = execute

Exemple

Se sterge (-) dreptul de citire (read) (r) pentru fisierul dante din categoria de utilizatori altii (other) (o). Nu sunt spatii intre o - si r.

chmod o - r dante


Urmatorul exemplu adauga permisiunea de scriere (write) (w) fisierului dante pentru categoriile de utilizatori grup (g) si other (o).


chmod g o + w dante


Determinarea drepturilor in Modul Octal

Modul Octal asigura un mijloc numeric rapid de modificare a drepturilor pentru toate categoriile de utilizatori. Exista trei drepturi posibile pentru fiecare set (r, w, si x) pentru fiecare tip de categorie de utilizatori (user, grup, altii). Fiecare set de drepturi poate fi atribuit print-o valoare numerica de la 0 la 7, in functie de cate drepturi sunt permise.

Dreptul r (read) are atribuita valoarea 4, w (write) valoarea 2 si x (execute) valoarea 1. Prin adunarea numerelor se obtine un total al celor trei drepturi care sunt atribuite categoriei respective de utilizatori (User, Grup sau Altii). De exemplu, daca proprietarul (user) are pentru un fisier drepturile r w x, vom aduna 4 (read) + 2 ( write) + 1 (execute) egal cu 7. Daca grupul are drepturilev r w - vom avea 4 + 2 + 0 (fara execute) si un total de 6. Daca altii (other) au doar dreptul r vom avea 4 + 0 + 0 (fara write sau execute) si un total de 4. Modu octal pentru acest fisier sau director este 764.



r w x r - - r w -



Folosind modul octal nu este nevoie a se specifice categoria de utilizatori atata timp cat fiecare pozitie reprezinta una din cele trei categorii. Modul octal este alcatuit din trei numere, fiecare repezentand suma drepturilor pentru una din cele trei categorii de utilizatori (User, Grup, si Altii).