Ce face chmod
Numele chmod provine de la change mode. Permite configurarea celor 3 permisiuni fundamentale: r (read / citire = 4), w (write / scriere = 2) și x (execute / execuție = 1).
Permisiunile pot fi specificate în format octal (ex. 755: 7 pentru proprietar, 5 pentru grup, 5 pentru alții) sau în format simbolic (ex. u+x adaugă drept de execuție pentru proprietar).
Opțiuni și argumente
| Opțiune / Parametru | Descriere |
|---|---|
-R, --recursive |
Aplică modificările recursiv pe toate fișierele și subdirectoarele. |
MOD octal (ex. 755, 644) |
Trei cifre reprezentând suma permisiunilor: citire (4) + scriere (2) + execuție (1). |
MOD simbolic (u, g, o, a) |
u (user/proprietar), g (grup), o (others/ceilalți), a (all/toți), urmate de +, - sau = și literele r,w,x. |
-v, --verbose |
Raportează fiecare modificare efectuată. |
Exemple
Exemplul 1: Adăugarea permisiunii de execuție unui script
Fără dreptul +x, un script Bash nu poate fi lansat direct cu ./script.sh.
echo 'echo "Rulez"' > script.sh
chmod +x script.sh
ls -l script.sh | awk '{print $1}'
Rezultat
-rwxr-xr-x@
Exemplul 2: Setarea permisiunilor standard pentru fișiere web
Fișierele obișnuite primesc 644 (rw-r–r–), iar directoarele 755 (rwxr-xr-x).
touch pagina.html
chmod 644 pagina.html
ls -l pagina.html | awk '{print $1}'
Rezultat
-rw-r--r--@
Greșeli frecvente
- Folosirea comenzii
chmod 777pe servere de producție; acordarea de drepturi universale de scriere oricărui utilizator reprezintă o vulnerabilitate majoră de securitate. - Setarea permisiunilor pe un director fără dreptul
x(execuție); pe directoare,xeste necesar pentru a putea intra în folder și a-i accesa fișierele.
Comenzi înrudite
chown: Schimbă proprietarul și grupul asociat unuia sau mai multor fișiere ori directoare.umask: Setează sau afișează masca implicită de permisiuni pentru fișierele și directoarele nou create.ls: Listează fișierele și directoarele dintr-o locație, cu detalii despre dimensiuni, drepturi de acces și date.stat: Afișează toate metadatele detaliate despre un fișier sau sistem de fișiere.