Modalità ottali e simboliche per chmod, più i bit setuid, setgid e sticky.
Ogni file ha tre classi: proprietario, gruppo e altri. Ogni classe somma tre bit: lettura vale 4, scrittura 2, esecuzione 1. Tre cifre ottali formano la modalità.
Tabella di riferimento · 42 voci
Permessi dei file LinuxExplained
42 of 42 rows
Numerico (ottale)
Proprietario con accesso completo; gruppo e altri leggono ed eseguono.
chmod 755 script.sh
Proprietario legge e scrive; gruppo e altri solo lettura.
chmod 644 notes.txt
Solo il proprietario legge e scrive; nessun accesso per gli altri.
chmod 600 ~/.ssh/id_rsa
Solo il proprietario ha accesso completo; nessun accesso per gli altri.
chmod 700 ~/.ssh
Accesso completo per tutti. Un rischio per la sicurezza.
chmod 777 shared/
Tutti leggono e scrivono. Nessun bit di esecuzione impostato.
chmod 666 log.txt
Proprietario con accesso completo; gruppo legge ed esegue; altri nessun accesso.
chmod 750 app/
Solo esecuzione, per tutte le classi. Una directory si può attraversare ma non elencare.
chmod 111 dir/
Nessun accesso per nessuna classe. Root può comunque leggere il file.
chmod 000 private.key
Proprietario e gruppo con accesso completo più setgid; lo schema tipico delle directory di team condivise.
chmod 2775 /srv/team
Risultati di umask
Maschera predefinita. I nuovi file ottengono 644; le nuove directory 755.
umask 022
Maschera privata. I nuovi file ottengono 600; le nuove directory 700.
umask 077
Simbolico
Aggiunge l'esecuzione al proprietario.
chmod u+x deploy.sh
Rimuove la scrittura al gruppo.
chmod g-w config.yml
Rimuove la lettura agli altri.
chmod o-r secret.env
Imposta la sola lettura per tutte le classi.
chmod a=r readme.md
Concede tutti i permessi a tutte le classi.
chmod ugo+rwx public/
Bit speciali
Bit setuid impostato. Il binario gira con i privilegi del proprietario del file.
chmod 4755 /usr/bin/passwd
Bit setgid impostato. I nuovi file e le nuove sottodirectory ereditano il gruppo della directory.
chmod 2755 /shared
Bit sticky impostato. Solo il proprietario del file può eliminare.
chmod 1777 /tmp
Bit sticky su un file regolare. Un suggerimento legacy di keep-in-swap che il Linux moderno ignora.
chmod 1755 legacy.sh
Comandi
Cambia i bit di modo di un file.
chmod 755 file
Cambia proprietario e gruppo di un file.
chown user:group file
Cambia il gruppo proprietario di un file.
chgrp devs file
Imposta la maschera di permessi predefinita per i nuovi file.
umask 022
Elenca i file con i permessi in formato lungo.
ls -l /etc
Mostra le voci POSIX ACL di un file.
getfacl report.pdf
Imposta o modifica voci POSIX ACL.
setfacl -m u:alice:rw report.pdf
Trova i file i cui bit di permesso corrispondono a una modalità.
find / -perm /4000
Stampa i metadati del file, incluso il modo ottale.
stat -c '%a %n' file
Elenca i permessi di ogni componente di un percorso.
namei -l /var/www/index.html
Cambia un attributo del file, come immutable.
chattr +i /etc/resolv.conf
Elenca gli attributi dei file.
lsattr /etc/resolv.conf
Mostra le capability concesse a un file.
getcap /usr/bin/ping
Concede una capability a un file, senza setuid.
setcap 'cap_net_raw=+ep' /usr/bin/ping
Elenca le capability effettive per la shell corrente.
capsh --print
Mostra user id, group id e appartenenze ai gruppi di un utente.
id alice
Elenca i gruppi a cui appartiene un utente.
groups alice
Esegue un comando come altro utente secondo la policy sudoers.
sudo systemctl restart nginx
Modifica il file sudoers con controllo della sintassi.