CATEGORII DOCUMENTE |
Introducere
Drepturile asupra fisier fisierelor in mod simbolic, mod numeric
Drepturile asupra directoarelor
Exercitii
Ce sunt drepturile si de ce sunt ele asa importante in Linux?
Sunt importante, fiindca sistemul de operare Linux protejeaza in primul rand utilizatorul obisnuit, astfel, ne-am gandit sa va prezentam in randurile care urmeaza cum veti realiza aceasta protectie.
Drepturile in Linux sunt valabile pentru toti utilizatorii. Singurul care nu intra in aceasta categorie este administratorul sistemului denumit root.
In Linux exista 3 feluri de drepturi care se exercita asupra fisierelor si directoarelor.
READ (Dreptul de CITIRE)
WRITE, (Dreptul de SCRIERE) al fisierelor si al directoarelor
EXECUTE (Dreptul de EXECUTIE)
Aceste 3 feluri de drepturi se impart pe 3 feluri de utilizatori:
Proprietari (owner)
Grupuri (group)
Altii (other)
Care la rindul lor reprezinta urmatoarele:
Proprietarul (user, u), este cel care creeaza un fisier, un director, este utilizatorul . sunteti dvs.!
Grupul (group, g) este o comunitate a utilizatorilor care au aceleasi proprietati. Daca, de exemplu, 10 utilizatori lucreaza la acelasi proiect, fiecare are acces la fisierele si directoarele create de ceilalti utilizatori ai grupului. Fiecare utilizator se afla intr-un grup, chiar daca este singurul care face parte din acel grup.
Altii (others, o) sunt utilizatorii care nu au nimic in comun cu grupul si cu proprietarul. Sunt utilizatori care se afla in alte grupuri.
Cum putem oare vizualiza aceste drepturi?
Ei bine, cand am instalat Linux v-am rugat sa va faceti un cont propriu unde sa va puteti pune directoarele si fisierfisierele in care lucrati.
Fiecare fisier sau director are noua drepturi, cate trei pentru fiecare din cele trei categorii de utilizatori.
Toate cele trei feluri de utilizatori la un loc formeaza o a patra categorie, cu toti (all, a).
Pentru schimbarea drepturilor unui fisier vom apela la comanda chmod.
Aceasta comanda poate fi folosita in 2 moduri, unul simbolic, iar celalalt octal
Figura 2
Pentru inceput cream fisierul zombie in directorul utilzatorului a1, a2 sau in care director dorim sa lucram. Putem face acest lucru cu comanda
touch zombie
Comanda pentru setarea drepturilor in modul simbolic este urmatorul:
chmod cineoperatordrepturi numefisier
unde
cine este inlocuit de maxim 3 litere: u pentru drepturile proprietarului (user), g pentru drepturile grupului (group), o pentru depturile altora (others) si a pentru a ne referi la toate cele 3 litere deodata (all, adica ugo).
operator poate lua 3 forme
(plus) pentru adaugarea unui drept
- (minus) pentru indepartarea unui drept
(egal) pentru a atribui un drept
drepturi este o combinatie de 3 litere r, w, x, care insemna, cum am spus mai sus, citire, scriere, executie
Si astfel putem scrie urmatoarea comanda:
$ chmod a=rw zombie
urmat de apasarea tastei "ENTER"
dupa care vom da comanda
$ ls -l zombie
urmat de apasarea tastei ENTER
rezultatul va fi urmatorul:
-rw-rw-rw- 1 pat CCSS1 70 Jul 27 20:20 zombie
Alte exemple:
$ chmod u+x fisier
Seteaza dreptul de executie pentru proprietarul fisierului (celelalte 8 drepturi raman neschimbate).
$ chmod go-wx fisier
Anuleaza dreptul de scriere si executie pentru toti in afara de proprietar (celelalte 5 raman cum erau).
$ chmod ugo+rwx fisier
Seteaza dreptul de citire, scriere, executie a fisierului pentru toti utilizatorii.
$ chmod +s fisier
Seteaza dreptul de executie pentru toti, cu privilegiile proprietarului.
Drepturile in Linux in mod octal sunt numerotate astfel:
CITIRE / READ = 4
SCRIERE / WRITE = 2
EXECUTIE / EXECUTE = 1
Proprietar |
Grup |
Altii |
||||||
r |
w |
x |
R |
w |
x |
r |
w |
x |
| ||||||||
Figura 3
Pentru setarea drepturilor unui fisier trebuie sa adunam cele 3 cifre.
citire + scriere + executie = 4 + 2 + 1 = 7
Deci dreptul 777 inseamna acces total al tuturor utilizatorilor pe fisier
Daca avem insa un fisier cu drepturi de citire si executie pentru proprietar, citire pentru grup si executie pentru altii, diagrama noastra va arata astfel: Figura 4
Proprietar |
Grup |
Altii |
||||||
r |
w |
x |
r |
w |
x |
r |
w |
x |
Figura 4
Ceea ce inseamna urmatoarele:
4+1 pentru proprietar, 4 pentru grup si 1 pentru altii => dreptul de 541.
Pentru fisierul zombie creat anterior:
presupunem ca fisierul are drepturile 777 adica rwx pentru proprietar, rwx pentru grup, rwx pentru altii.
Pentru schimbarea acestor drepturi in 541 vom folosi urmatoarea comanda:
$ chmod 541 zombie
urmat de apasarea tastei "ENTER"
Pentru a schimba drepturile fisierului zombi in 731 vom folosi urmatorul exemplu:
$ chmod 731 zombie
urmat de apasarea tastei "ENTER"
Ceea ce inseamna ca drepturile proprietarului sunt de citire/scriere/executie, cele ale grupului sunt de scriere/executie, iar cel al altora este doar de executie.
Pentru vizualizarea proprietatilor unui fisier vom folosi o comanda de listare a acestor drepturi:
$ ls -l zombie
Dupa apasarea tastei Enter vom avea urmatoarele:
-rwx-wx-x 1 pat CCSS1 70 Jul 27 20:20 zombie
unde:
-rwx-wx-x - prima liniuta arata ce tip este "zombie" (d - pentru director, - pentru fisier, c-pentru dispozitiv, b - pentru dispozitiv bloc, s - pentru socket, l - pentru legatura, p - pentru pipe) si dreptul utilizatorilor asupra fisierului
- numarul de legaturi spre acest fisier (link count)
pat - este numele de cont al proprietarului fisierului
CCSS1 - este grupul din care face parte pat utilizatorul
- dimensiunea fisierului, in octeti
Jul 27 - data cand a fost salvat ultima data fisierul
- ora la care a fost salvat fisierul
zombie - numele fisierului
Directoarele au si ele drepturi ca si fisierele, deci notiunile de utilizator, grup raman valabile si in cazul lor. Pentru directoare, dreptul de citire inseamna dreptul de listare al continutului (cu ls); dreptul de scriere inseamna ca putem sterge, crea fisiere sau monta sisteme de fisiere in acest director (putem sa‑i schimbam structura), iar dreptul de executie inseamna ca putem intra in el (cu cd);
Exemplu:
$ chmod o-rwx /home/text
In afara de proprietar, ceilalti utilizatori nu vor putea accesa directorul /home/text.
Pentru informatii suplimentare puteti da comanda:
man chmod
EXERCTII:
1. Creati un director cu numele "frigider", in el creati un fisier cu numele "sticla". Listati continutul directorului cu ajutorul comenzii ls -l, si urmariti cu atentie drepturile fisierului. Dupa realizarea listarii schimbati drepturile fisierului cu urmatoarele, in mod numeric:
Vedeti unde apare eroarea si notati aceasta eroare.
Raspundeti la intrebarea: De ce da eroare acea comanda?
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1470
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved