GNU/Linux >> Linux Esercitazione >  >> Linux

Comando Chown in Linux (proprietà dei file)

Il chown Il comando consente di modificare la proprietà dell'utente e/o del gruppo di un determinato file, directory o collegamento simbolico.

In Linux, tutti i file sono associati a un proprietario ea un gruppo e assegnati con diritti di accesso autorizzati per il proprietario del file, i membri del gruppo e altri.

In questo tutorial, ti mostreremo come usare il chown comando attraverso esempi pratici.

Come usare chown #

Prima di entrare in come usare il chown comando, iniziamo esaminando la sintassi di base.

Il chown le espressioni di comando assumono la forma seguente:

chown [OPTIONS] USER[:GROUP] FILE(s)

USER è il nome utente o l'ID utente (UID) del nuovo proprietario. GROUP è il nome del nuovo gruppo o l'ID gruppo (GID). FILE(s) è il nome di uno o più file, directory o collegamenti. Gli ID numerici devono essere preceduti da + simbolo.

  • USER - Se viene specificato solo l'utente, l'utente specificato diventerà il proprietario dei file dati, la proprietà del gruppo non viene modificata.
  • USER: - Quando il nome utente è seguito da due punti : e il nome del gruppo non viene fornito, l'utente diventerà il proprietario dei file e la proprietà del gruppo di file verrà modificata nel gruppo di accesso dell'utente.
  • USER:GROUP - Se vengono specificati sia l'utente che il gruppo (senza spazio tra di essi), la proprietà dell'utente dei file viene modificata nell'utente specificato e la proprietà del gruppo viene modificata nel gruppo specificato.
  • :GROUP - Se l'Utente viene omesso e il gruppo è preceduto da due punti : , solo la proprietà del gruppo dei file viene modificata nel gruppo specificato.
  • : Se solo due punti : viene fornito, senza specificare l'utente e il gruppo, non viene apportata alcuna modifica.

Per impostazione predefinita, in caso di successo, chown non produce alcun output e restituisce zero.

Usa ls -l comando per scoprire chi possiede un file o a quale gruppo appartiene il file:

ls -l filename.txt
-rw-r--r-- 12 linuxize users 12.0K Apr  8 20:51 filename.txt
|[-][-][-]-   [------] [---]
                |       |
                |       +-----------> Group
                +-------------------> Owner

Gli utenti normali possono modificare il gruppo del file solo se sono proprietari del file e solo in un gruppo di cui fanno parte. Gli utenti amministrativi possono modificare la proprietà del gruppo di tutti i file.

Come cambiare il proprietario di un file #

Per cambiare il proprietario di un file usa il chown comando seguito dal nome utente del nuovo proprietario e dal file di destinazione come argomento:

chown USER FILE

Ad esempio, il comando seguente cambierà la proprietà di un file denominato file1 a un nuovo proprietario chiamato linuxize :

chown linuxize file1

Per modificare la proprietà di più file o directory, specificarli come un elenco separato da spazi. Il comando seguente cambia la proprietà di un file denominato file1 e directory dir1 a un nuovo proprietario chiamato linuxize :

chown linuxize file1 dir1

L'ID utente numerico (UID) può essere utilizzato al posto del nome utente. L'esempio seguente cambierà la proprietà di un file denominato file2 a un nuovo proprietario con UID 1000 :

chown 1000 file2

Se esiste un proprietario numerico come nome utente, la proprietà verrà trasferita al nome utente. Per evitare questo anteporre all'ID + :

chown 1000 file2

Come modificare il proprietario e il gruppo di un file #

Per cambiare sia il proprietario che il gruppo di un file usa il chown comando seguito dal nuovo proprietario e dal gruppo separati da due punti (: ) senza spazi intermedi e il file di destinazione.

chown USER:GROUP FILE

Il comando seguente cambierà la proprietà di un file denominato file1 a un nuovo proprietario chiamato linuxize e raggruppare users :

chown linuxize:users file1

Se ometti il ​​nome del gruppo dopo i due punti (: ) il gruppo del file viene modificato nel gruppo di accesso dell'utente specificato:

chown linuxize: file1

Come modificare il gruppo di un file #

Per cambiare solo il gruppo di un file usa il chown comando seguito da due punti (: ) e il nuovo nome del gruppo (senza spazio tra di loro) e il file di destinazione come argomento:

chown :GROUP FILE

Il comando seguente cambierà il gruppo proprietario di un file denominato file1 a www-data :

chown :www-data file1

Un altro comando che puoi utilizzare per modificare la proprietà di gruppo dei file è chgrp .

Quando l'opzione ricorsiva non viene utilizzata, chown comando cambia la proprietà del gruppo dei file a cui puntano i collegamenti simbolici, non i collegamenti simbolici stessi.

Ad esempio, se si tenta di modificare il proprietario e il gruppo del collegamento simbolico symlink1 che punta a /var/www/file1 , chown cambierà la proprietà del file o della directory a cui punta il collegamento simbolico:

chown www-data: symlink1

È probabile che invece di modificare la proprietà del target, venga visualizzato l'errore "cannot dereference" link simbolico1:autorizzazione negata".

L'errore si verifica perché per impostazione predefinita sulla maggior parte delle distribuzioni Linux i collegamenti simbolici sono protetti e non è possibile operare sui file di destinazione. Questa opzione è specificata in /proc/sys/fs/protected_symlinks . 1 significa abilitato e 0 Disabilitato. Si consiglia di non disabilitare la protezione del collegamento simbolico.

Per modificare la proprietà del gruppo del collegamento simbolico stesso, usa il -h opzione:

chown -h www-data symlink1

Come modificare ricorsivamente la proprietà del file #

Per operare ricorsivamente su tutti i file e le directory nella directory data, usa il -R (--recursive ) opzione:

chown -R USER:GROUP DIRECTORY

L'esempio seguente cambierà la proprietà di tutti i file e le sottodirectory in /var/www directory a un nuovo proprietario e gruppo denominato www-data :

chown -R www-data: /var/www

Se la directory contiene collegamenti simbolici, passare il -h opzione:

chown -hR www-data: /var/www

Altre opzioni che possono essere utilizzate quando si modifica ricorsivamente la proprietà della directory sono -H e -L .

Se l'argomento è passato a chown command è un collegamento simbolico che punta a una directory, il -H opzione farà sì che il comando lo attraversi. -L dice a chown per attraversare ogni collegamento simbolico a una directory incontrata. Di solito, non dovresti usare queste opzioni perché potresti rovinare il tuo sistema o creare un rischio per la sicurezza.

Utilizzo di un file di riferimento #

Il --reference=ref_file l'opzione consente di modificare la proprietà dell'utente e del gruppo di determinati file in modo che corrisponda a quella del file di riferimento specificato (ref_file ). Se il file di riferimento è un collegamento simbolico chown utilizzerà l'utente e il gruppo del file di destinazione.

chown --reference=REF_FILE FILE

Ad esempio, il comando seguente assegnerà all'utente e al gruppo la proprietà del file1 a file2

chown --reference=file1 file2

Conclusione #

chown è un'utilità della riga di comando Linux/UNIX per modificare la proprietà dell'utente e/o del gruppo del file.

Per saperne di più sul chown comando visita la manpage di chown o digita man chown nel tuo terminale.

Se hai domande o feedback, sentiti libero di lasciare un commento.


Linux
  1. Comando Chown:cambia proprietario del file in Linux

  2. Come modificare il proprietario di file/gruppi con il comando chown in Linux

  3. Linux chmod and chown - Come modificare le autorizzazioni e la proprietà dei file in Linux

  4. Come utilizzare il comando chown per modificare la proprietà in Linux

  5. Comando su Linux

Comando Stat in Linux

Comando ID in Linux

Comando Chown in Linux (Modifica proprietà file)

Comando Linux id - Stampa le informazioni sull'ID utente e sull'ID gruppo

Impara l'uso del comando chown (Cambia proprietà) in Linux

Esempi di comandi chown di Linux