Cum gestionați permisiunile avansate cu chmod și chown.Gestionarea corectă a permisiunilor cu chmod și chown este esențială pentru securitatea și buna funcționare a unui sistem Linux.
Înțelegerea acestor comenzi și aplicarea lor în funcție de scenariul specific vă permite să controlați eficient accesul la fișiere și directoare, prevenind erorile și breșele de securitate.
Cum gestionați permisiunile avansate
Gestionarea permisiunilor fișierelor și directoarelor este esențială în administrarea unui sistem Linux.
Comenzile chmod și chown oferă control total asupra accesului utilizatorilor și grupurilor.
Acest ghid explică modul în care se pot seta și modifica permisiunile într-un mod avansat și sigur.
Permisiunile în Linux – concepte de bază
Fiecare fișier și director are trei tipuri de permisiuni:
- r – read (citire)
- w – write (scriere)
- x – execute (executare)
Aceste permisiuni sunt atribuite pentru:
- Owner – utilizatorul care deține fișierul
- Group – grupul asociat fișierului
- Others – toți ceilalți utilizatori
Utilizarea chmod pentru modificarea permisiunilor
Comanda chmod permite schimbarea permisiunilor prin două metode: simbolică și numerică.
1. Sintaxa simbolică
chmod u+x script.sh # adaugă permisiunea de execuție pentru proprietar chmod g-w raport.txt # elimină permisiunea de scriere pentru grup chmod o=r fișier.txt # setează doar citire pentru alții
2. Sintaxa numerică
Permisiunile sunt reprezentate prin cifre:
- 4 = read
- 2 = write
- 1 = execute
Exemplu:
chmod 755 script.sh
Explicație:
- 7 (4+2+1) = rwx (proprietar)
- 5 (4+0+1) = r-x (grup)
- 5 (4+0+1) = r-x (alții)
Utilizarea chown pentru schimbarea proprietarului
Comanda chown modifică proprietarul și/sau grupul unui fișier sau director.
1. Schimbarea proprietarului
sudo chown utilizator fișier.txt
2. Schimbarea grupului
sudo chown :grup fișier.txt
3. Schimbarea ambelor simultan
sudo chown utilizator:grup fișier.txt
4. Aplicarea recursivă
Pentru directoare și conținutul acestora:
sudo chown -R utilizator:grup /folder sudo chmod -R 755 /folder
Permisiuni speciale
În Linux există și permisiuni avansate, precum:
1. setuid (SUID)
Permite executarea unui fișier cu privilegiile proprietarului.
chmod u+s script.sh
2. setgid (SGID)
Fișierele create într-un director vor aparține grupului directorului.
chmod g+s /folder
3. sticky bit
Util pentru directoarele comune (ex: /tmp), unde doar proprietarul poate șterge fișierele sale.
chmod +t /folder
Vizualizarea permisiunilor
Folosiți comanda ls -l pentru a verifica permisiunile:
ls -l fișier.txt
Exemplu de ieșire:
-rwxr-xr-- 1 utilizator grup 1024 iul 24 12:00 fișier.txt
Studii de caz practice
- Un script accesibil doar pentru root:
chmod 700 script.sh - Director partajat pentru membrii aceluiași grup:
chmod 2775 /proiect - Director public cu protecție sticky:
chmod 1777 /public

