Moduri octale și simbolice pentru chmod, plus biții setuid, setgid și sticky.
Fiecare fișier are trei clase: proprietar, grup și alții. Fiecare clasă însumează trei biți: citirea e 4, scrierea e 2, executarea e 1. Trei cifre octale formează modul.
Tabel de referință · 42 intrări
Permisiuni de fișiere în LinuxExplained
42 of 42 rows
Numerice (octale)
Proprietarul are acces complet; grupul și ceilalți citesc și execută.
chmod 755 script.sh
Proprietarul citește și scrie; grupul și ceilalți doar citesc.
chmod 644 notes.txt
Doar proprietarul citește și scrie; nimeni altcineva nu are acces.
chmod 600 ~/.ssh/id_rsa
Doar proprietarul are acces complet; nimeni altcineva nu are acces.
chmod 700 ~/.ssh
Toată lumea are acces complet. Un risc de securitate.
chmod 777 shared/
Toată lumea citește și scrie. Niciun bit de executare setat.
chmod 666 log.txt
Proprietarul are acces complet; grupul citește și execută; ceilalți nimic.
chmod 750 app/
Doar executare, pentru toate clasele. Un director poate fi traversat, dar nu și listat.
chmod 111 dir/
Niciun acces pentru nicio clasă. Root poate totuși citi fișierul.
chmod 000 private.key
Proprietarul și grupul au acces complet plus setgid; tiparul directoarelor de echipă partajate.
chmod 2775 /srv/team
Rezultate umask
Masca implicită. Fișierele noi primesc 644; directoarele noi primesc 755.
umask 022
Masca privată. Fișierele noi primesc 600; directoarele noi primesc 700.
umask 077
Simbolic
Adaugă executare pentru proprietar.
chmod u+x deploy.sh
Elimină scrierea de la grup.
chmod g-w config.yml
Elimină citirea de la ceilalți.
chmod o-r secret.env
Setează doar-citire pentru toate clasele.
chmod a=r readme.md
Acordă toate permisiunile tuturor claselor.
chmod ugo+rwx public/
Biți speciali
Bitul setuid este setat. Binarul rulează ca proprietarul fișierului.
chmod 4755 /usr/bin/passwd
Bitul setgid este setat. Fișierele și subdirectoarele noi moștenesc grupul directorului.
chmod 2755 /shared
Bitul sticky este setat. Doar proprietarul fișierului poate șterge.
chmod 1777 /tmp
Bitul sticky pe un fișier obișnuit. Un indiciu moștenit de păstrare în swap, pe care Linux-ul modern îl ignoră.
chmod 1755 legacy.sh
Comenzi
Schimbă biții modului fișierului.
chmod 755 file
Schimbă proprietarul și grupul unui fișier.
chown user:group file
Schimbă grupul care deține un fișier.
chgrp devs file
Setează masca implicită de permisiuni pentru fișierele noi.
umask 022
Listează fișierele cu permisiuni în format lung.
ls -l /etc
Afișează intrările POSIX ACL ale unui fișier.
getfacl report.pdf
Setează sau modifică intrări POSIX ACL.
setfacl -m u:alice:rw report.pdf
Găsește fișierele ale căror biți de permisiuni se potrivesc cu un mod.
find / -perm /4000
Afișează metadatele unui fișier, inclusiv modul octal.
stat -c '%a %n' file
Listează permisiunile fiecărei componente dintr-o cale.
namei -l /var/www/index.html
Schimbă un atribut al fișierului, precum immutable.
chattr +i /etc/resolv.conf
Listează atributele fișierelor.
lsattr /etc/resolv.conf
Afișează capacitățile acordate unui fișier.
getcap /usr/bin/ping
Acordă o capacitate unui fișier, fără setuid.
setcap 'cap_net_raw=+ep' /usr/bin/ping
Listează capacitățile în vigoare pentru shell-ul curent.
capsh --print
Afișează id-ul de utilizator, id-ul de grup și apartenențele la grupuri ale unui utilizator.
id alice
Listează grupurile din care face parte un utilizator.
groups alice
Rulează o comandă ca alt utilizator conform politicii sudoers.
sudo systemctl restart nginx
Editează fișierul sudoers cu verificarea sintaxei.