Abbreviazione di cambia proprietà , Il comando Chown è un'utilità della riga di comando utilizzata per modificare la proprietà dell'utente o del gruppo di un file o di una directory e persino i collegamenti. La filosofia di Linux è tale che ogni file o directory è di proprietà di un utente o gruppo specifico con determinati diritti di accesso.
Utilizzando diversi esempi, proveremo a vedere i vari casi d'uso del comando chown. Il comando Chown utilizza una sintassi abbastanza semplice e diretta.
$ chown OPZIONI UTENTE:file GROUP
Analizziamo brevemente i parametri:
L'attributo UTENTE fa riferimento al nome utente dell'utente che sarà proprietario del file. Puoi specificare il nome utente o l'UID ( ID utente). Nel frattempo, il GRUPPO opzione indica il nome del nuovo gruppo che il file acquisirà dopo l'esecuzione del comando. L'opzione file rappresenta un file normale o una directory o anche un collegamento simbolico. Queste sono le tre entità le cui autorizzazioni possono essere modificate.
Alcuni punti da notare:
1) Quando l'opzione USER viene specificata da sola, la proprietà del file/directory cambia in quella dell'utente specificato mentre la proprietà del gruppo rimane invariata. Ecco un esempio:
$ chown john file1.txt
Nel comando precedente, la proprietà dell'utente del file file1.txt cambia dall'utente corrente all'utente john.
2) Se l'opzione USER è preceduta da due punti completi, ad esempio USER:e il nome del gruppo non viene fornito, l'utente assume la proprietà del file ma la proprietà del gruppo del file passa al gruppo di accesso dell'utente. Ad esempio:
$ chown john: file1.txt
In questo esempio, l'utente john assume la proprietà del file file1.txt, ma la proprietà del gruppo del file cambia nel gruppo di accesso di john.
3) Quando entrambe le opzioni utente e gruppo sono specificate separate da due punti, ad esempio USER:GROUP – senza spazi al suo interno – il file assume la proprietà del nuovo utente e del gruppo come specificato
$ chown john:john file1.txt
Nell'esempio precedente, il file assume la proprietà dell'utente e del gruppo dell'utente john.
4) Quando l'opzione USER viene tralasciata e l'opzione del gruppo è invece preceduta dai due punti completi :GROUP, cambia solo la proprietà del gruppo del file.
Come visualizzare i permessi dei file
Per visualizzare i permessi dei file, usa semplicemente il comando ls -l seguito dal nome del file
$ ls -l nomefile
Ad esempio:
$ ls -l file1.txt
Dall'output, possiamo vedere che il file è di proprietà dell'utente linuxtechi che appartiene al gruppo linuxtechi rispettivamente nella 3a e 4a colonna.
Come cambiare il proprietario del file con il comando chown
Prima di modificare i permessi, richiama sempre sudo se non stai lavorando come utente root. Ciò ti dà privilegi elevati per modificare la proprietà di un file da parte di utenti e gruppi.
Per modificare la proprietà del file, utilizza la sintassi:
$ sudo chown nome file utente
Ad esempio,
$ sudo chown james file1.txt
Dall'output, puoi vedere chiaramente che la proprietà del file è cambiata da linuxtechi a user james.
In alternativa, invece di utilizzare il nome utente, puoi invece passare l'UID dell'utente. Per ottenere l'UID, visualizzare il file /etc/passwd.
$ cat /etc/passwd | grep username
Dall'esempio seguente, possiamo vedere che l'UID dell'utente linuxtechi è 1002
Per riportare la proprietà del file all'utente linuxtechi, eseguiremo il comando:
$ sudo chown 1002 file1.txt
Come cambiare il proprietario del gruppo con il comando chown
Come discusso in precedenza, per modificare il proprietario del gruppo di un file, ometti l'utente e anteponi semplicemente al nome del gruppo i due punti completi.
$ sudo chown :file di gruppo
Ad esempio, per cambiare il proprietario del gruppo di file1.txt da linuxtechi a docker, abbiamo eseguito il comando:
$ sudo chown :docker file1.txt
Come modificare sia il proprietario del file che il proprietario del gruppo di un file
Se desideri modificare sia il proprietario che il gruppo a cui appartiene un file, specifica le opzioni utente e gruppo separate da due punti completi come mostrato nella sintassi seguente. Assicurati che non ci siano spazi tra le opzioni ei due punti.
$ sudo chown utente:nomefile di gruppo
Ad esempio, il comando seguente modifica la proprietà del file file1.txt nell'utente james e il gruppo redis come verificato utilizzando il comando ls.
$ sudo chown james:redis file1.txt
Come modificare ricorsivamente la proprietà dei file
Quando si applicano le autorizzazioni alle directory, potresti voler applicare le modifiche in modo ricorsivo, ovvero apportare le modifiche alla proprietà in modo che discenderanno e si applichino a file e sottodirectory. Per ottenere ciò, utilizza l'opzione ricorsiva -R o la direttiva –recursive.
$ sudo chown -R utente:directory di gruppo
Ad esempio, il comando seguente assegna tutti i file e le cartelle nella proprietà della directory /var/www al gruppo www-data.
$ sudo chown -R :www-data /var/www
L'esempio seguente assegna la proprietà dei report di directory insieme a tutti i file e le cartelle nella directory all'utente linuxtechi.
$ sudo chown -R linuxtechi reports
Come cambiare la proprietà utilizzando un file di riferimento
Infine, c'è un modo ingegnoso che puoi utilizzare per cambiare la proprietà di un file, ovvero utilizzando un file di riferimento. Utilizzando il comando chown, puoi modificare la proprietà dell'utente e del gruppo di un file utilizzando un altro file come punto di riferimento.
La sintassi è mostrata di seguito:
$ chown –reference=file_ref
Si supponga di voler assegnare la proprietà dell'utente e del gruppo di file1.txt a un altro file file2.txt. Come lo faresti? Questo è illustrato nel comando seguente.
$ chown --reference=file1.txt file2.txt
L'output sopra conferma che file2.txt eredita la proprietà dell'utente e del gruppo di file1.txt. Nel comando, file1.txt è il file di riferimento.
Conclusione
Il comando Chown è un potente strumento utilizzato per la gestione della proprietà di file e directory. Per ulteriori informazioni, controlla le pagine man di chown.
$ uomo chown
Leggi anche :Comando Linux zip e decomprimi con esempi