Cosa fa
Il calcolatore chmod converte i permessi dei file Unix e Linux tra i tre modi in cui si scrivono: una griglia di caselle per lettura, scrittura ed esecuzione, un numero ottale come 755 e una stringa simbolica come rwxr-xr-x. Scrive anche il comando chmod corrispondente in forma ottale e simbolica, spiega chi può fare cosa e supporta i bit speciali setuid, setgid e sticky. Tutto avviene nel browser.
Come si usa
- Spunta le caselle per proprietario, gruppo e altri, oppure digita una modalità nella casella. Accetta l’ottale (
644,0644,4755), stringhe nello stile dils -l(rw-r--r--o-rw-r--r--con il tipo di file davanti) ed espressioni chmod comeu=rwx,g=rx,o=oa+x. - Caselle e risultati seguono ciò che scrivi, e spuntando una casella la modalità viene riscritta nella stessa notazione.
- Imposta il nome del file in Opzioni e attiva Ricorsivo (-R) se vuoi applicare la modalità a un intero albero di directory. Copia il comando con un clic.
Modalità comuni
chmod 755 deploy.sh # rwxr-xr-x
chmod 644 index.html # rw-r--r--
chmod 600 ~/.ssh/id_ed25519 # rw-------
chmod 1777 /tmp # rwxrwxrwt
- 755 per directory, script e programmi: il proprietario può modificarli, tutti possono leggerli ed eseguirli.
- 644 per i file normali come pagine web e immagini.
- 600 per file privati come chiavi SSH e file
.env: solo il proprietario può leggerli. SSH rifiuta le chiavi leggibili da altri. - 700 per directory private e 775/664 quando un gruppo di utenti condivide un progetto.
Come funzionano i numeri
Ogni classe di utenti riceve una cifra ottale data dalla somma di lettura = 4, scrittura = 2 ed esecuzione = 1. Su una directory, lettura significa elencarne i nomi, scrittura creare ed eliminare file al suo interno ed esecuzione entrarvi o accedere ai file che contiene.
Una cifra iniziale facoltativa contiene i bit speciali: setuid = 4, setgid = 2, sticky = 1. Nella forma simbolica sostituiscono la lettera di esecuzione: s per setuid e setgid, t per sticky. Una S o T maiuscola indica che il bit speciale è impostato ma l’esecuzione no, il che è quasi sempre un errore.
Il calcolatore mostra anche la umask equivalente, cioè i bit che una umask predefinita toglie da 777 per ottenere la modalità. Una umask di 022 produce directory 755 e file 644.
Domande frequenti
› Che cosa significa chmod 755?
Ogni cifra corrisponde a una classe di utenti: proprietario, gruppo e altri. 7 = lettura (4) + scrittura (2) + esecuzione (1); 5 = lettura + esecuzione. Quindi 755 consente al proprietario di fare tutto e agli altri di leggere ed eseguire il file, scritto rwxr-xr-x. È la modalità tipica per script e directory.
› Che differenza c’è tra 644 e 755?
644 (rw-r--r--) non ha il bit di esecuzione, quindi è adatto ai file normali come HTML, immagini e configurazioni. 755 aggiunge l’esecuzione per tutti, necessaria ai programmi per avviarsi e alle directory per potervi entrare.
› Perché chmod 777 è una cattiva idea?
777 permette a qualsiasi utente del sistema di modificare o sostituire il file. Su un server web significa che qualunque processo compromesso può riscrivere il tuo codice. Correggi invece il proprietario con chown e usa 755 per le directory e 644 per i file.
› Cosa sono setuid, setgid e sticky bit?
Formano una quarta cifra ottale iniziale. setuid (4) esegue un programma come il suo proprietario, setgid (2) come il suo gruppo oppure fa ereditare il gruppo ai nuovi file di una directory, e lo sticky bit (1) impedisce di eliminare i file altrui in una directory condivisa come /tmp. Nell’output di ls compaiono come s e t al posto dell’esecuzione.