Quando ci avviciniamo al mondo Linux — che sia per uso personale, lavorativo, gaming, server, ecc. o semplicemente capire meglio come funziona il sistema — prima o poi ci imbatteremo con i permessi dei file.
Questi ultimi sono una delle basi fondamentali di Linux e determinano chi può leggere, scrivere o eseguire un file o aprire una cartella.
Capire bene i permessi significa:
- evitate errori come “Permission denied”
- aumentare la sicurezza del sistema
- configurare correttamente server web, WordPress, Docker, backup, ecc.
- sapere perché alcuni script funzionano e altri no
- proteggere file privati o sensibili
In questo articolo trovi tutto ciò che ti serve per diventare autonomo nella gestione dei permessi.
È una guida universale, valida per tutte le distribuzioni Linux: Ubuntu, Debian, Fedora, openSUSE e molte altre.
1️⃣ Cosa sono i permessi in Linux e perché sono così importanti
In Linux, quasi tutto è considerato un file:
- documenti
- script
- directory
- dispositivi hardware
- configurazioni di sistema
Ogni file o cartella ha tre livelli di permessi:
- User → il proprietario
- Group → il gruppo associato
- Others → tutti gli altri utenti del sistema
E ciascun livello può avere tre tipi di permessi:
| Permesso | Simbolo | Significato |
|---|---|---|
| Read (Letture) | r | leggere un file / elencare i contenuti di una directory |
| Write (Scrittura) | w | modificare un file / creare-eliminare file nella directory |
| Execute (Esecuzione) | x | eseguire un file / entrare in una directory |
2️⃣ Come leggere i permessi: capire rwxr-xr--
Per vedere i permessi usa il comando (già trattato nella LEZIONE 1):
ls -l
Esempio di output:
-rwxr-xr--
Analizzando meglio la stringa e come vengono identificati i permessi associati a utente, gruppo o altri utenti:
[ - ] [rwx] [r-x] [r--]
| | | |
tipo user group others
1. Tipo di file
-→ file normaled→ directoryl→ collegamento simbolico (link)
2. Permessi
Ogni blocco rappresenta:
- il proprietario
- il gruppo
- tutti gli altri
E usa le lettere:
r→ readw→ writex→ execute-→ nessun permesso, quindi il relativo permesso associato alla posizione non è attribuito.
Nell’esempio:
- User → rwx = Pieno accesso all’utente (lettura, scrittura, esecuzione)
- Group → r-x = Accesso lettura ed esecuzione al gruppo
- Others → r– = Sola lettura per qualsiasi utente
3️⃣ I permessi numerici (777, 755, 644…)
Linux permette di rappresentare i permessi anche come numeri. Questo semplifica la lettura e la comprensione, ma anche l’assegnazione, dei permessi.
Ogni permesso ha un valore:
| Permesso | Valore |
|---|---|
| read (r) | 4 |
| write (w) | 2 |
| execute (x) | 1 |
I valori si sommano:
7= 4+2+1 → rwx6= 4+2 → rw-5= 4+1 → r-x4= r–
Comando: chmod
Cosa fa?
il comando chmod (change mode, cambio modalità) è un comando dei sistemi operativi Unix o Linux based, che è utilizzato per modificare i diritti e i permessi di file e cartelle, ovviamente se l’utente, gruppo, ecc. Ha i diritti per poterlo fare.
Sintassi:
Per utilizzare il comando basta usare la seguente sintassi:
chmod [opzioni] [--] modalità file1 [file2 ...]
Dove “modalità” rappresenta il permesso da dare al “file” (file1) o ai files e cartelle.
Esempio: chmod 755 file
7 5 5
rwx r-x r-x
Ogni numero, rappresenta quindi la tipologia di permessi rispettivamente per utente, gruppo, altri utenti e assegna le modalità di lettura, scrittura ed esecuzione utilizzando solo la codifica numerica.
Esempio: chmod 644 file
6 4 4
rw- r-- r--
Usato per file di configurazione, WordPress, pagine web.
4️⃣ Permessi nelle directory (DAVVERO DA SAPERE!)
I permessi nelle cartelle funzionano diversamente:
| Permesso | Effetto sulla directory |
|---|---|
| read (r) | permette di vedere i file nella cartella |
| write (w) | permette di creare/eliminare file |
| execute (x) | permette di entrarci con cd |
⚠️ Senza x (esecuzione) non puoi entrare nella directory, anche se hai r (lettura). Quindi è importante che le cartelle abbiano il permesso “x” per poter essere aperte.
Esempio: cartella privata
mkdir privato
chmod 700 privato
Solo il proprietario può accedervi.
5️⃣ Come controllare i permessi
Verificare permessi, proprietario e gruppo dei files in una cartella:
ls -l
Output tipico:
-rw-r--r-- 1 gaetano users 123 note.txt
Interpretazione:
- Permessi →
rw-r--r-- - Proprietario → gaetano
- Gruppo → users
6️⃣ Modificare i permessi (chmod)
Dare permesso di esecuzione a un file
chmod +x script.sh
Impostare direttamente i permessi
chmod 755 script.sh
chmod 644 index.php
chmod 700 privato/
Modalità simbolica
chmod u=rwx,g=rx,o=rx script.sh
chmod o-w file.txt
chmod g+w shared_folder/
7️⃣ Cambiare proprietario e gruppo (chown)
Ogni file appartiene a un utente e un gruppo.
Cambiare proprietario:
sudo chown gaetano file.txt
Cambiare proprietario e gruppo:
sudo chown gaetano:users file.txt
Modifica ricorsiva (file + sottocartelle):
sudo chown -R www-data:www-data /var/www/html
Utilissimo per:
- WordPress
- Nginx / Apache
- Docker volumi
- script di backup
8️⃣ Esempi pratici che ti capitano davvero
✔️ Rendere eseguibile uno script
chmod +x backup.sh
✔️ Risolvere l’errore “Permission denied”
Se ottieni:
bash: ./script.sh: Permission denied
Soluzione:
chmod 755 script.sh
✔️ Permessi corretti per WordPress
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
sudo chmod 644 /var/www/html/wp-config.php
✔️ Creare una cartella personale e privata
mkdir segreti
chmod 700 segreti
9️⃣ Tabella riassuntiva
| Azione | Comando |
|---|---|
| Controllare permessi | ls -l |
| Cambiare permessi | chmod 755 file |
| Aggiungere esecuzione | chmod +x file |
| Cambiare proprietario | chown utente file |
| Cambiare proprietario+gruppo | chown utente:gruppo file |
| Modifica ricorsiva | chown -R utente:gruppo cartella |
🎯 Conclusione
I permessi in Linux sono un concetto fondamentale, ma con un po’ di pratica diventano semplici e intuitivi.
Saperli leggere e modificare ti permette di:
- evitare errori
- configurare correttamente un server
- proteggere i tuoi file
- evitare rischi di sicurezza
- gestire WordPress, Docker e applicazioni web
Ora conosci tutto ciò che serve per lavorare con i permessi in modo sicuro e professionale.

