GNU/Linux >> Linux Esercitazione >  >> Linux

Come gestire le autorizzazioni/proprietà di file e directory in Linux

Proprietà del file

Ogni file è di proprietà di un utente specifico (o UID) e di un gruppo specifico (o GID). Il comando chown può essere utilizzato per modificare solo l'utente o l'utente e il gruppo di un file. Ecco un esempio di modifica del proprietario del file "file1" in "utente" e del relativo "utente" in utenti. Nota che l'uso del comando ls -l serve solo a mostrare la modifica e non è un passaggio necessario per modificare la proprietà del file:

# ls -l
total 8
-rw-r--r--. 1 root root  30 Feb 16 04:47 file1
-rw-r--r--. 1 root root 130 Feb 16 04:47 file2
# chown user:user file1
# ls -l
total 8
-rw-r--r--. 1 user user  30 Feb 16 04:47 file1
-rw-r--r--. 1 root root 130 Feb 16 04:47 file2

Il formato di base per il comando chown è il seguente:

# chown user.group filename

È possibile utilizzare i due punti (:) al posto del carattere separatore del punto (.).

# chown user:group filename

Inoltre, è possibile omettere il nome dell'utente o del gruppo. Se il nome utente viene omesso (ma è presente il carattere separatore), il comando chown si comporta come chgrp comando e viene modificata solo la proprietà del gruppo. Se il nome del gruppo viene omesso (ma è presente il carattere separatore, il gruppo verrà impostato sul gruppo di accesso dell'utente specificato. Se vengono omessi sia il nome del gruppo che il carattere separatore, viene modificato solo il nome utente.

Ad esempio, per modificare solo il proprietario è possibile eseguire quanto segue:

# chown user filename

Un comando alternativo per modificare solo il gruppo di un file è il comando chgrp. Ad esempio:

# chgrp group filename

Il comando chgrp viene comunemente utilizzato dagli utenti normali per modificare la proprietà di gruppo dei propri file. Il comando chown è normalmente utilizzato solo dall'utente root.

Proprietà del gruppo predefinita

Ogni utente può essere un membro di molti gruppi (elencati nel file /etc/group sotto diversi gruppi). Un solo gruppo sarà il gruppo principale di un utente (elencato nella voce dell'utente in /etc/password). Quando un utente crea un file, per impostazione predefinita il file sarà di proprietà del gruppo principale dell'utente. Se vogliono che il file sia di proprietà di uno dei loro altri gruppi, devono utilizzare il comando chgrp per modificare l'appartenenza al gruppo.

Un modo più conveniente per farlo è accedere temporaneamente a un altro gruppo, rendendo quel gruppo il tuo gruppo principale sostitutivo. In questo modo, tutti i nuovi file creati saranno automaticamente di proprietà del gruppo desiderato e non sarà necessario modificare manualmente l'appartenenza al gruppo. Esamina l'esempio seguente e nota l'uso di newgrp comando.

$ id
uid=1001(user) gid=1001(user) groups=1001(user),10(wheel)
$ touch file1
$ ls -l file1
-rw-rw-r--. 1 user user 0 Feb 16 14:17 file1
$ newgrp wheel
$ touch file2
$ ls -l file2
-rw-r--r--. 1 user wheel 0 Feb 16 14:22 file2

Autorizzazioni per file e directory

Di seguito è riportato l'output di esempio da ls -l; puoi vedere dal primo carattere di ogni riga che foo e bar sono directory (indicate dalla d) e che meta è un file normale (indicato da -).

$ ls -l
drwxr-xr-x 2 user user    6 Jan  7  2015 Desktop
-rw-rw-r-- 1 user user    0 Feb 16 14:17 file1
-rw-r--r-- 1 user wheel   0 Feb 16 14:22 file2

I successivi nove caratteri mostrano le autorizzazioni del file per utente, gruppo e altri (o chiunque altro) come mostrato di seguito, con parentesi aggiunte per chiarezza:

-(rw-) (r--) (r--) 1 user wheel   0 Feb 16 14:22 file2

Ora il proprietario ha i permessi di lettura e scrittura (rw-), il gruppo e tutti gli altri hanno solo i permessi di lettura (r–). Questa è chiamata rappresentazione simbolica perché lettere come r, w e x vengono utilizzate per indicare i permessi. I permessi possono anche essere rappresentati numericamente:r =4; w =2; x =1

Aggiungi ogni sezione in modo che i permessi del file meta (dall'esempio sopra) siano 664. Ecco un altro modo per vedere come arriviamo a quel numero:

-(rw-)  (rw-)  (r--)
-(42-)  (42-)  (4--)
 6       6       4

L'aggiunta dei numeri in ciascuna sezione comporta autorizzazioni di 664.

Modifica delle autorizzazioni dei file

Il chmod comando viene utilizzato per modificare i permessi di un file. Può essere utilizzato per aggiungere o rimuovere le autorizzazioni simbolicamente. Ad esempio, per aggiungere i permessi di esecuzione per il proprietario di un file, eseguiresti:

$ chmod u+x file_name

Oppure, per aggiungere autorizzazioni di lettura e scrittura per il gruppo proprietario del file, eseguire:

$ chmod g+rw file_name

Invece di aggiungere autorizzazioni, la sintassi simbolica di chmod può anche essere utilizzata per sottrarre o impostare un valore assoluto come mostrato in questi esempi:

$ chmod o-w file_name
$ chmod u=rwx,g=rx,o= file_name

Il comando chmod può anche impostare in modo esplicito i permessi usando una rappresentazione numerica. Ad esempio, per impostare le autorizzazioni su un file su rwxrwxr–, eseguire:

$ chmod 774 file_name


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

  2. Come aggiungere un utente a un gruppo in Linux

  3. Come creare ed eliminare un gruppo di utenti in Linux

  4. Come gestire gli utenti con useradd in Linux

  5. Linux:come impostare le autorizzazioni file predefinite per tutte le cartelle/file in una directory?

Come copiare file e directory in Linux

Permessi della directory Linux di base e come controllarli

Gestisci le autorizzazioni di directory e file con chmod Recursive

Come aggiungere un utente al gruppo su Linux

Comprendere le autorizzazioni di base dei file e la proprietà in Linux

Come aggiungere un utente a un gruppo Linux