I permessi dei file su Linux
Una caratteristica del file system sul sistema operativo Linux sono i permessi sui files.
Cosa sono i permessi del file? Sono le autorizzazioni concesse all'utente che permettono di fare o non fare alcune operazioni sul file.
Tipi di permessi su Linux
Ogni file ha tre tipi di permessi
- Permesso di lettura (r). Dove la r sta per read. E' il permesso che consente di vedere il contenuto.
Nota. Nel caso delle directory il permesso r consente la lettura della directory.
- Permesso di scrittura (w). Dove la w sta per write. E' il permesso di scrivere o modificare il contenuto del file.
Nota. Nel caso delle directory il permesso w consente di modificare il contenuto della directory.
- Permesso di esecuzione (x). Dove la x sta per eXecute. E' il permesso di eseguire il file. In genere, si tratta di un programma eseguibile.
Nota. Nel caso delle directory il permesso x consente di accedere al contenuto dei files e dei metadati delle voci della directory.
A questi si aggiunge il simbolo del trattino (-) che indica la mancanza del permesso.
A seconda della posizione in cui si trova nella stringa dei permessi, il trattino può indicare l'assenza del permesso a leggere, scrivere o eseguire il file.
Come vedere i permessi su Linux
Per vedere la lista dei permessi dei files, entro in una directory qualsiasi di Linux.
cd /usr
Poi digito il comando ls -l sulla linea di comando.
ls -l
Il sistema operativo visualizza l'elenco dei files presenti nella directory e i relativi permessi.
Come funzionano i permessi su Linux?
La stringa dei permessi di un file è composta da 10 caratteri.
Ogni posizione della stringa è associata a una specifica informazione o permesso a seconda del carattere che compare ( drw- ).
I permessi possono essere associati a tre categorie di utenti:
- L'utente (u). Dove la lettera u significa user.
- Il gruppo (g). Dove la lettera g significa group.
- Gli altri utenti (o). Dove la lettera o significa others.
Nota. In alcuni comandi Linux si utilizza anche la categoria "tutti" ( All ) tramite la lettera "a" per identificare l'utente, il gruppo e gli altri utenti.
Il tipo di file
La prima posizione indica la tipologia del file ( file normale, directory, link ).
Possono esserci tre caratteri:
- file normale (-)
- directory (d)
- link (l)
I permessi dell'utente
I tre caratteri dalla seconda alla quarta posizione indicano i permessi dell'utente a cui appartiene il file.
Ogni posizione è associata a un particolare permesso:
- Il permesso di lettura ( r ). La seconda posizione indica il permesso di lettura ( r ) o meno ( - ) sul file da parte dell'utente proprietario.
- Il permesso di scrittura ( w ). La terza posizione indica il permesso di scrittura ( w ) o meno ( - ) sul file da parte dell'utente.
- Il permesso di esecuzione ( x ). La quarta posizione indica il permesso di esecuzione ( x ) o meno ( - ) sul file da parte dell'utente.
Il trattino indica la mancanza del permesso a leggere, scrivere o eseguire il file, a seconda della posizione in cui compare.
I permessi del gruppo
I tre caratteri dalla quinta alla settima posizione sono i permessi del gruppo associato al file.
Anche in questo caso ogni singola posizione è associata a uno specifico permesso:
- Il permesso di lettura ( r ). La quinta posizione è il permesso di lettura ( r ) o meno ( - ) sul file da parte del gruppo.
- Il permesso di scrittura ( w ). La sesta posizione è il permesso di scrittura ( w ) o meno ( - ) sul file da parte del gruppo.
- Il permesso di esecuzione ( x ). La settima posizione è il permesso di esecuzione ( x ) o meno ( - ) sul file da parte del gruppo.
Nota. Ogni utente deve essere associato almeno a un gruppo principale. E' comunque molto frequente associare un utente a più gruppi, a seconda delle funzioni che deve svolgere sul sistema.
I permessi degli altri utenti
I tre caratteri dall'ottava alla decima posizione sono i permessi degli altri utenti ( others ) sul file.
Ogni posizione è associata a uno specifico permesso:
- Il permesso di lettura ( r ). L'ottava posizione è il permesso di lettura ( r ) o meno ( - ) sul file da parte degli utenti.
- Il permesso di scrittura ( w ). La nona posizione è il permesso di scrittura ( w ) o meno ( - ) sul file da parte degli utenti.
- Il permesso di esecuzione ( x ). La decima posizione è il permesso di esecuzione ( x ) o meno ( - ) sul file da parte degli utenti.
Un esempio pratico
Nella cartella /usr viene visualizzato il seguente elenco di files.
Il primo file della lista, quello chiamato "local", ha la seguente stringa dei permessi:
drwxr-xr-x
Ora cerchiamo di capire il significato dei permessi.
La lettera "d" nella posizione iniziale mi fa capire che si tratta di una directory.
drwxr-xr-x
La combinazione "rwx" nei permessi degli utenti indica che l'utente può leggere, scrivere ed eseguire il files.
drwxr-xr-x
La combinazione "r-x" nei permessi del gruppo vuol dire che gli altri utenti del gruppo associato al file possono leggere ed eseguire il files ma non modificarlo.
drwxr-xr-x
Lo stesso vale per tutti gli altri utenti in quanto anche ai permessi degli others è associata la combinazione "r-x". Possono leggere ed eseguire il file ma non modificarlo.
drwxr-xr-x
Ora il significato della stringa dei permessi su Linux dovrebbe essere chiaro.
Una volta compreso questo concetto, posso vedere come cambiare i permessi sui files e sulle cartelle di Linux.