Gli account utente possono essere assegnati a uno o più gruppi su Linux. È possibile configurare i permessi dei file e altri privilegi per gruppo. Ad esempio, su Ubuntu, solo gli utenti del gruppo sudo possono utilizzare
sudo
comando per ottenere autorizzazioni elevate.
Aggiungi un nuovo gruppo
Se si desidera creare un nuovo gruppo sul proprio sistema, utilizzare
groupadd
comando seguente comando, sostituendo new_group con il nome del gruppo che si desidera creare. Avrai bisogno di usare sudo anche con questo comando (o, su distribuzioni Linux che non usano
sudo
dovrai eseguire il
su
comando da solo per ottenere autorizzazioni elevate prima di eseguire il comando).
sudo groupadd mynewgroup
Aggiungi un account utente esistente a un gruppo
Per aggiungere un account utente esistente a un gruppo sul tuo sistema, usa il
usermod
comando, sostituzione
examplegroup
con il nome del gruppo a cui si desidera aggiungere l'utente in e
exampleusername
con il nome dell'utente che si desidera aggiungere.
usermod -a -G examplegroup exampleusername
Ad esempio, per aggiungere l'utente
geek
al gruppo
sudo
usa il seguente comando:
usermod -a -G sudo geek
Modifica il gruppo principale di un utente
Mentre un account utente può far parte di più gruppi, uno dei gruppi è sempre il "gruppo primario" e gli altri sono "gruppi secondari". Il processo di accesso dell'utente e i file e le cartelle creati dall'utente verranno assegnati al gruppo principale.
Per modificare il gruppo principale a cui è assegnato un utente, eseguire il
usermod
comando, sostituzione
examplegroup
con il nome del gruppo che vuoi essere il principale e
exampleusername
con il nome dell'account utente.
usermod -g groupname username
Notare la
-g
Qui. Quando si utilizza una g minuscola, si assegna un gruppo primario. Quando si utilizza una lettera maiuscola
-G
come sopra, si assegna un nuovo gruppo secondario.
Visualizza i gruppi a cui è assegnato un account utente
Per visualizzare i gruppi a cui è assegnato l'account utente corrente, eseguire il
groups
comando. Vedrai un elenco di gruppi.
groups
Per visualizzare gli ID numerici associati a ciascun gruppo, eseguire il
id
comando invece:
id
groups
comando e specfy il nome dell'account utente.
groups exampleusername
È inoltre possibile visualizzare gli ID numerici associati a ciascun gruppo eseguendo il
id
comando e specificazione di un nome utente.
id exampleusername
Il primo gruppo nel
groups
lista o il gruppo mostrato dopo "gid =" nel
id
lista è il gruppo principale dell'account utente. Gli altri gruppi sono i gruppi secondari. Quindi, nello screenshot qui sotto, il gruppo principale dell'account utente è
example
Crea un nuovo utente e assegna un gruppo in un unico comando
A volte potresti voler creare un nuovo account utente che abbia accesso a una particolare risorsa o directory, come un nuovo utente FTP. È possibile specificare i gruppi a cui verrà assegnato un account utente durante la creazione dell'account utente con
useradd
comando, in questo modo:
useradd -G examplegroup exampleusername
Ad esempio, per creare un nuovo account utente denominato jsmith e assegnare quell'account al gruppo ftp, eseguire:
useradd -G ftp jsmith
Ovviamente vorrete assegnare una password per quell'utente, ovviamente:
passwd jsmith
Aggiungi un utente a più gruppi
Assegnando i gruppi secondari a un account utente, puoi facilmente assegnare più gruppi contemporaneamente separando l'elenco con una virgola.
usermod -a -G group1,group2,group3 exampleusername
Ad esempio, per aggiungere l'utente denominato geek ai gruppi ftp, sudo e example, eseguirai:
usermod -a -G ftp,sudo,example geek
Puoi specificare tutti i gruppi che vuoi, basta separarli tutti con una virgola.
Visualizza tutti i gruppi sul sistema
Se si desidera visualizzare un elenco di tutti i gruppi sul proprio sistema, è possibile utilizzare il
getent
comando:
getent group
Questo output mostrerà anche quali account utente sono membri di quali gruppi. Quindi, nello screenshot qui sotto, possiamo vedere che gli account utente syslog e chris sono membri del gruppo adm.