CHOWN
chown (change owner) È il comando grazie al quale possiamo cambiare il proprietario e il gruppo di un file o directory. La sua sintassi È molto semplice, basterà indicare separati da un punto il nuovo utente e il nuovo gruppo per un file.
Vediamo in dettaglio i file contenuti nella seguente directory.
Come abbiamo già visto tutti i file sono di proprietà di andrea e hanno come gruppo di appartenenza amici. Se vogliamo cambiare l'owner o il group dovremo assumere l'identità di root, quindi scriviamo:
andrea@lnxbox1:~/programmazione$ su
Password:
Dopo aver messo la password di root # $
lnxbox1:/home/andrea/programmazione# chown mario Prog
lnxbox1:/home/andrea/programmazione# ls -la Prog
-rwxr-xr-x 1 mario amici 27767 Feb 13 22:47 Prog
Come vedete il file ha ora un nuovo owner
Poniamo ora di voler cambiare anche il gruppo da amici in colleghi. Basterà anteporre il gruppo da un . per sostituirlo.
lnxbox1:/home/andrea/programmazione# chown .colleghi Prog
lnxbox1:/home/andrea/programmazione# ls -la Prog
-rwxr-xr-x 1 mario colleghi 27767 Feb 13 22:47 Prog
Anche in questo caso i permessi sono rimasti gli stessi. È possibile cambiare sia il proprietario che il gruppo contemporaneamente, basta separarli da un .
lnxbox1:/home/andrea/programmazione# chown root.root Prog
lnxbox1:/home/andrea/programmazione# ls -la Prog
-rwxr-xr-x 1 root root 27767 Feb 13 22:47 Prog
Ora solo l'amministratore di sistema o chi fa parte del suo gruppo potrà leggere il file, mentre tutti potranno comunque eseguirlo
CHMOD
Con chmod saremo in grado di cambiare anche i permessi per i file. La sintassi di chmod ammette due modi di indicare i permessi, uno sotto forma di 3 cifre ottali (cioÈ da 0 a 7 inclusi), e uno attraverso degli operatori simbolici.
La rappresentazione in forma ottale può sembrare complessa, ma risulta essere anche la più veloce e compatta. Il suo funzionamento È basato su delle combinazioni numeriche che ci danno univocamente i permessi di un file. Con questa rappresentazione viene assegnato il valore 1 al permesso di esecuzione, 2 a quello di scrittura e 4 a quello di lettura. La somma di questi valori ci dà il permesso risultante per l'utente, il gruppo o gli altri. Nell'esecuzione di chmod dovremo riportare i permessi che vogliamo assegnare utilizzando le tre cifre (una per l'owner, una per il group, e una per other) secondo il precedente metodo. Per una semplificazione riporto il seguente schema:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
Un altro modo più semplice È indicare come parametro tramite un identificativo (u per l'owner, g per il gruppo, o per gli altri) gli utenti che accedono al file dei quali vogliamo cambiare i permessi seguito da un + o un - a seconda che vogliamo aggiungere o togliere quel determinato permesso e da r, w oppure x in base alle modifiche da attuare.
Ad esempio per cambiare da -r--r--r-- a -rw-r--r-- i permessi di un file possiamo usare:
oppure
chmod u+w file
Se vogliamo cambiarli da -r--r--r-- a -rwxrwxr-x
chmod 775 file
oppure
chmod ug+w file chmod ugo+x file
Al posto di "ugo" È possibile mettere "a" oppure niente ("ugo+x" = "a+x" = "+x").
Se vogliamo che possa accedere a un file in lettura solo il proprietario (passare quindi da -r--r--r-- a -r--------) scriveremo:
chmod 400 file
oppure
chmod go-r file
Oltre ai permessi di scrittura lettura ed esecuzione È possibile indicare come modalità: SUID SGID Sticky