Permessi
Per impostare i permessi per file e cartelle su ArchLinux, è possibile utilizzare il comando chmod
.
La sintassi generale per utilizzare il comando chmod
è la seguente:
chmod [permessi] [file/cartella]
I permessi possono essere specificati in formato numerico o simbolico.
Permessi numerici
I permessi numerici rappresentano i permessi di lettura, scrittura ed esecuzione per l'utente proprietario, il gruppo proprietario e gli altri utenti.
Ogni permesso è rappresentato da un numero: 4 per la lettura, 2 per la scrittura e 1 per l'esecuzione. La somma dei numeri corrispondenti ai permessi desiderati deve essere specificata per ogni categoria di utenti.
- 4 = permesso di lettura
- 2 = permesso di scrittura
- 1 = permesso di esecuzione
Ad esempio, per concedere tutti i permessi (lettura, scrittura ed esecuzione) a tutti gli utenti, è possibile utilizzare il seguente comando:
chmod 777 [file/cartella]
Permessi simbolici
I permessi simbolici rappresentano i permessi di lettura, scrittura ed esecuzione per l'utente proprietario, il gruppo proprietario e gli altri utenti, utilizzando i simboli r, w e x per rappresentare i permessi e le parole chiave u, g e o per rappresentare rispettivamente l'utente proprietario, il gruppo proprietario e gli altri utenti.
- r = permesso di lettura
- w = permesso di scrittura
- x = permesso di esecuzione
Ad esempio, per concedere tutti i permessi (lettura, scrittura ed esecuzione) a tutti gli utenti, è possibile utilizzare il seguente comando:
chmod ugo+rwx [file/cartella]
Impostazioni di base
u
indica i permessi dell'utente proprietario del file o della cartellag
indica i permessi del gruppo proprietario del file o della cartellao
indica i permessi di tutti gli altri utentia
indica tutti gli utenti
Impostazione dei permessi
+
aggiunge i permessi specificati-
rimuove i permessi specificati=
imposta i permessi specificati (sostituisce qualsiasi permesso precedente)
Ad esempio, per concedere il permesso di lettura, scrittura ed esecuzione all'utente proprietario, il permesso di lettura al gruppo proprietario e il permesso di esecuzione ad altri utenti, è possibile utilizzare il seguente comando:
chmod u=rwx,g=r,o=x [file/cartella]
Impostazione ricorsiva dei permessi
Per impostare i permessi in modo ricorsivo per una directory e il suo contenuto, è possibile utilizzare il flag -R
.
Ad esempio, per concedere tutti i permessi (lettura, scrittura ed esecuzione) alla directory documenti
e al suo contenuto, è possibile utilizzare il seguente comando:
chmod -R 777 documenti/
Suggeriamo di utilizzare con attenzione questo flag, perché i permessi impostati potrebbero avere effetti indesiderati su file e cartelle che non si desidera modificare.
Esempi pratici
- Concedere il permesso di lettura e scrittura all'utente proprietario del file
documento.txt
chmod u+rw documento.txt
- Concedere il permesso di esecuzione a tutti gli utenti per la cartella
progetto1
chmod a+x progetto1/
- Concedere il permesso di lettura al gruppo proprietario per la cartella
progetto2
e il suo contenuto
chmod -R g+r progetto2/
- Concedere tutti i permessi alla directory
documenti
e al suo contenuto
chmod -R 777 documenti/
I permessi numerici in chmod
consentono di impostare i permessi di lettura, scrittura ed esecuzione utilizzando una notazione numerica.
I permessi numerici sono rappresentati da un numero composto da tre cifre, dove ogni cifra indica i permessi di lettura, scrittura ed esecuzione per il proprietario (prima cifra), il gruppo (seconda cifra) ed altri utenti (terza cifra), rispettivamente.
Ciascuna cifra è un numero composto da tre bit dove il valore di ciascun bit rappresenta un permesso possibile. I bit sono moltiplicati per un valore specifico che si riferisce a ogni permesso.
I valori dei bit sono i seguenti:
- 4: lettura (r)
- 2: scrittura (w)
- 1: esecuzione (x)
Ad esempio, il numero 755
corrisponde a un proprietario con tutti i permessi (rwx), gruppo con permessi di lettura ed esecuzione (r-x) e altri utenti con permessi di lettura ed esecuzione (r-x)
Qui di seguito vengono descritti i comandi chmod
numerici:
0
(000): nessun permesso1
(001): permesso di esecuzione2
(010): permesso di scrittura3
(011): permesso di scrittura ed esecuzione4
(100): permesso di lettura5
(101): permesso di lettura ed esecuzione6
(110): permesso di lettura e scrittura7
(111): permesso di lettura, scrittura ed esecuzione
Ecco alcuni esempi di come utilizzare la notazione numerica con chmod
:
- Per impostare i permessi di un file a proprietario (lettura/scrittura), gruppo (lettura) ed altri utenti (esecuzione):
chmod 754 file.txt
- Per concedere tutti i permessi (lettura, scrittura ed esecuzione) a tutti gli utenti:
chmod 777 file.txt
- Per concedere permessi di sola lettura a tutti (proprietario, gruppo e altri utenti):
chmod 444 file.txt
È importante notare che la notazione numerica sovrascrive tutti i permessi precedenti del file o della cartella. Inoltre, se usata con l'opzione -R
, modificherà i permessi anche a tutti i file e le cartelle all'interno della cartella specificata.
Creata: August 16, 2023