L'universo dei permessi di Ubuntu può sembrare molto più complicato di quello che è in realtà, bastano poche conoscenze ed il gioco è fatto.
Cominciamo a vedere come fare per sapere quali sono i permessi dei file che si trovano in una determinata cartella. Supponiamo di voler conoscere i permessi dei file che si trovano nella nostra home:
ls -l /home/NOMEUTENTE
e ci apparirà un output del genere:
Il primo carattere rappresenta una caratteristica specifica del file, ad esempio se è una cartella abbiamo la d di directory. Nel caso in cui una cartella fosse un collegamento ad un'altra troveremo alla destra del nome della cartella una freccia con il percorso della directory di cui è il collegamento.
I successivi 9 caratteri sono da guardare come 3 terne ed indicano i permessi, rispettivamente di:
- proprietario (owner)
- gruppo (group)
- altri utenti (other)
- r = read, permette di leggere il file, senza modificarlo;
- w = write, permetti di scrivere, sovrascrivere, modificare il contenuto del file;
- x = execute, permette di eseguire il file, se questo è un eseguibile.
- r consente la visualizzazione del contenuto della cartella, con il comando ls;
- w consente l'eliminazione o la creazione di file all'interno della cartella;
- x consente di accedere alla cartella, magari con il comando cd, anche nel caso in cui non se ne possa visualizzare il contenuto.
Ora che sappiamo interpretare i permessi, dobbiamo poterli cambiare! Lo possiamo fare in due modi, con le lettere o coi numeri. Sono tutti e due piuttosto semplici, richiedono solo un po' di memoria e l'utilizzo del comando chmod.
Proviamo prima con le lettere. Abbiamo visto che i permessi caratterizzano proprietario, gruppo e altri. Nel terminale queste tre entità vengono indicate così:
- u è il proprietario
- g è il gruppo
- o sono gli altri
Ci aiuteremo con ancora tre simboli:
- + per aggiungere un permesso
- - per togliere un permesso
- = per impostare un permesso
chmod u+w /home/NOMEUTENTE/prova1
Leviamo ora la scrittura del guppo:
chmod g-w /home/NOMEUTENTE/prova1
Cambiamo idea e facciamo in modo che proprietario, gruppo e altri possano leggere, scrivere e eseguire il nostro file:
chmod ugo+rwx /home/NOMEUTENTE/prova1
Proviamo ora il metodo con i numeri.
Qua ci dobbiamo ricordare che significato hanno le varie cifre:
- 0 = nessun permesso
- 1 = esecuzione
- 2 = scrittura
- 3 = 2+1 = esecuzione + scrittura
- 4 = lettura
- 5 = 4+1 = lettura + esecuzione
- 6 = 4+2 = lettura + scrittura
- 7 = 4+2+1 = lettura + scrittura + esecuzione
- la prima si riferisce ai permessi del proprietario
- la seconda ai permessi del gruppo
- la terza ai permessi degli altri utenti
chmod 755 /home/NOMEUTENTE/prova1
Per cambiare i permessi di una cartella e contemporaneamente di tutti i file in essa contenuti, dobbiamo aggiungere -R subito dopo il comando chmod. Supponiamo di voler dare a tutti i permessi di lettura, scrittura ed esecuzione della cartella share nella home e dei file che contiene:
chmod -R 777 /home/NOMEUTENTE/share
Per poter cambiare i permessi di file e cartelle di cui non si è proprietari bisogna agire da root, eseguendo i comandi che abbiamo indicato finora con davanti sudo. Ovviamente, come ogni volta che si agisce da root, dobbiamo agire con molta cautela, cambiare i programmi di determinati file del sistema può essere anche molto pericoloso.
Nessun commento:
Posta un commento