GNU/Linux >> Linux Esercitazione >  >> Linux

Introduzione al comando chown di Linux

Ogni file e directory su un sistema Linux è di proprietà di qualcuno e il proprietario ha il controllo completo per modificare o eliminare i file di cui è proprietario. Oltre ad avere un utente proprietario , un file ha un gruppo proprietario .

Puoi visualizzare la proprietà di un file utilizzando ls -l comando:

[pablo@workstation Downloads]$ ls -l
total 2454732
-rw-r--r--. 1 pablo pablo 1934753792 Jul 25 18:49 Fedora-Workstation-Live-x86_64-30-1.2.iso

La terza e la quarta colonna dell'output sono l'utente proprietario e il gruppo, che insieme sono indicati come proprietà . Entrambi sono pablo per il file ISO sopra.

Le impostazioni di proprietà, impostate da chmod comandare, controllare chi è autorizzato a eseguire azioni di lettura, scrittura o esecuzione. Puoi cambiare la proprietà (una o entrambe) con il chown comando.

Spesso è necessario cambiare proprietà. File e directory possono vivere a lungo su un sistema, ma gli utenti possono andare e venire. Potrebbe essere necessario modificare anche la proprietà quando i file e le directory vengono spostati nel sistema o da un sistema all'altro.

La proprietà dei file e delle directory nella mia home directory sono il mio utente e il mio gruppo principale, rappresentato nella forma utente:gruppo . Supponiamo che Susan stia gestendo il gruppo Delta, che deve modificare un file chiamato mynotes . Puoi usare il chown comando per cambiare l'utente in susan e il gruppo su delta :

$ chown susan:delta mynotes
ls -l
-rw-rw-r--. 1 susan delta 0 Aug  1 12:04 mynotes

Una volta che il gruppo Delta ha finito con il file, può essere riassegnato a me:

$ chown alan mynotes
$ ls -l mynotes
-rw-rw-r--. 1 alan delta 0 Aug  1 12:04 mynotes

Sia l'utente che il gruppo possono essere riassegnati a me aggiungendo due punti (: ) all'utente:

$ chown alan: mynotes
$ ls -l mynotes
-rw-rw-r--. 1 alan alan 0 Aug  1 12:04 mynotes

Anteponendo il gruppo con due punti, puoi modificare solo il gruppo. Ora membri della gamma il gruppo può modificare il file:

$ chown :gamma mynotes
$ ls -l
-rw-rw-r--. 1 alan gamma 0 Aug  1 12:04 mynotes

Alcuni argomenti aggiuntivi da chown possono essere utili sia dalla riga di comando che in uno script. Proprio come molti altri comandi Linux, chown ha un argomento ricorsivo (-R ) che dice al comando di scendere nella directory per operare su tutti i file all'interno. Senza -R flag, modifichi i permessi solo della cartella, lasciando invariati i file al suo interno. In questo esempio, si supponga che l'intento sia quello di modificare le autorizzazioni di una directory e di tutto il suo contenuto. Qui ho aggiunto il -v argomento (verboso) in modo che chown riporti ciò che sta facendo:

$ ls -l . conf
.:
drwxrwxr-x 2 alan alan 4096 Aug  5 15:33 conf

conf:
-rw-rw-r-- 1 alan alan 0 Aug  5 15:33 conf.xml

$ chown -vR susan:delta conf
changed ownership of 'conf/conf.xml' from alan:alan to  susan:delta
changed ownership of 'conf' from alan:alan to  susan:delta

A seconda del tuo ruolo, potresti dover utilizzare sudo per cambiare la proprietà di un file.

Più risorse Linux

  • Comandi Linux cheat sheet
  • Cheat sheet sui comandi avanzati di Linux
  • Corso online gratuito:Panoramica tecnica RHEL
  • Cheat sheet della rete Linux
  • Cheat sheet di SELinux
  • Cheat sheet dei comandi comuni di Linux
  • Cosa sono i container Linux?
  • I nostri ultimi articoli su Linux

Puoi utilizzare un file di riferimento (--reference=RFILE ) quando si modifica la proprietà dei file in modo che corrisponda a una determinata configurazione o quando non si conosce la proprietà (come potrebbe essere il caso durante l'esecuzione di uno script). Puoi duplicare l'utente e il gruppo di un altro file (RFILE , noto come file di riferimento), ad esempio, per annullare le modifiche apportate in precedenza. Ricorda che un punto (. ) si riferisce all'attuale directory di lavoro.

$ chown -vR --reference=. conf

Segnala modifiche

La maggior parte dei comandi ha argomenti per controllare il proprio output. Il più comune è -v (--verboso ) per abilitare verbose, ma chown ha anche un -c (--modifiche ) argomento per indicare a chown di segnalare solo quando viene apportata una modifica. Chown segnala comunque altre cose, ad esempio quando un'operazione non è consentita.

L'argomento -f (--silenzioso , --silenzioso ) viene utilizzato per eliminare la maggior parte dei messaggi di errore. Userò -f e il -c nella sezione successiva in modo che vengano mostrate solo le modifiche effettive.

Preserva radice

La radice (/ ) del filesystem Linux dovrebbe essere trattato con grande rispetto. Se viene commesso un errore a questo livello, le conseguenze potrebbero lasciare un sistema completamente inutile. In particolare quando si esegue un comando ricorsivo che apporta qualsiasi tipo di modifica o peggio:eliminazioni. Il comando chown ha un argomento che può essere utilizzato per proteggere e preservare la radice. L'argomento è --preserve-root . Se questo argomento viene utilizzato con un comando chown ricorsivo sulla radice, non viene eseguito nulla e viene visualizzato un messaggio.

$ chown -cfR --preserve-root alan /
chown: it is dangerous to operate recursively on '/'
chown: use --no-preserve-root to override this failsafe

L'opzione non ha effetto se non viene utilizzata insieme a --recursive . Tuttavia, se il comando viene eseguito dall'utente root, le autorizzazioni di / stesso verrà modificato, ma non di altri file o directory all'interno.

$ chown -c --preserve-root alan /
chown: changing ownership of '/': Operation not permitted
[root@localhost /]# chown -c --preserve-root alan /
changed ownership of '/' from root to alan

La proprietà è sicurezza

La proprietà di file e directory fa parte di una buona sicurezza delle informazioni, quindi è importante controllare e mantenere occasionalmente la proprietà dei file per prevenire accessi indesiderati. Il comando chown è uno dei più comuni e importanti nell'insieme dei comandi di sicurezza di Linux.


Linux
  1. Un'introduzione all'uso di tcpdump nella riga di comando di Linux

  2. Introduzione al comando Linux chmod

  3. Padroneggia il comando ls di Linux

  4. Introduzione al comando alternatives in Linux

  5. Un'introduzione al comando diff

Come Chown ricorsivamente su Linux

20 esempi pratici di comando Chown in Linux

Esempi essenziali del comando ps in Linux

Qual è il comando kill in Linux?

Comprendere il comando dell'ora in Linux

Uso del comando grep in Linux