I gruppi Linux sono necessari per una facile gestione e amministrazione degli utenti. Il sistema Linux e Unix contiene gruppi regolari (normali) e di sistema.
Le risorse Linux (ad esempio file o directory) sono impostate con autorizzazioni di lettura, scrittura o esecuzione per il gruppo associato che ha utenti che condividono tali privilegi.
In questo tutorial impariamo come creare gruppi in Linux usando il comando groupadd.
Comando di aggiunta gruppo
Il funzionamento simile a Linux e Unix utilizza groupadd
comando per creare gruppi. Dovresti avere accesso root o privilegio utente sudo per eseguire groupadd
comando.
La riga seguente mostra la sintassi del comando groupadd:
groupadd [options] groupname
Come creare un gruppo in Linux
Per creare un gruppo usa groupadd
comando seguito dal nome del gruppo.
Il comando seguente aggiungerà un gruppo "sviluppatori" al sistema e in seguito potrai aggiungere un utente a questo gruppo.
# groupadd developers
Le informazioni sul gruppo verranno archiviate nel file '/etc/groups' e puoi usare il comando grep per cercare il nome del gruppo.
Ad esempio, cerchiamo il gruppo 'sviluppatori' usando il comando grep nel file '/etc/group':
# grep developers /etc/group
developers:x:506:
Crea gruppo con GID personalizzato
Nel tutorial precedente che abbiamo visto durante la creazione di un nuovo utente, il sistema crea un ID utente (UID) univoco per ogni utente. Allo stesso modo, quando creiamo un nuovo gruppo, viene creato un numero GID (Group ID).
Se desideri fornire un numero GID personalizzato (specifico), può essere fornito con -g
o --gid
opzione.
L'esempio seguente mostra come creare un gruppo denominato "sviluppatori" con GID specifico (3456):
# groupadd -g 3456 developers
Per verificare possiamo elencare il gruppo e utilizzare il comando grep per filtrare:
# grep developers /etc/group
developers:x:3456:
Crea un gruppo di sistema
I GID (ID gruppo) sono assegnati per impostazione predefinita a gruppi compresi tra i valori "GID_MIN" e "GID_MAX" definiti nel file login.defs (/etc/login.defs). Di solito, il valore di GID_MIN è 500 o 1000 nella maggior parte dei sistemi Linux .
I GID sotto 'GID_MIN' sono riservati ai gruppi di sistema (per operazioni come backup, manutenzione o per la concessione dell'accesso all'hardware). Per creare un gruppo con GID inferiore al valore 'GID_MIN', usa -r
opzione.
Ad esempio, creiamo un gruppo 'devsys' usando -r
opzione:
# groupadd -r devsys
Verifichiamo elencando il gruppo e vediamo che il GID allocato è 102 (che meno di 500).
# grep devsys /etc/group
devsys:x:102:
Creazione di un gruppo con GID non univoco
Se creiamo un gruppo con un numero GID esistente, il sistema non consentirà la creazione di un gruppo. Ma c'è un'opzione per allocare GID non univoci a un gruppo.
L'output seguente mostra che il sistema non consentirà la creazione del gruppo denominato 'devops' perché esiste un altro gruppo con il numero GID 505.
# groupadd -g 505 devops
groupadd: GID 505 is not unique
Ora creiamo un gruppo con GID non univoco usando l'opzione -o.
Questa volta puoi vedere che il gruppo 'devops' è stato creato.
# groupadd -o -g 505 devops
Quando elenchi i gruppi puoi vedere che esistono due gruppi con lo stesso numero GID:
# grep 505 /etc/group
bill:x:505:
devops:x:505:
Modifica delle opzioni predefinite
Per sovrascrivere i valori predefiniti (in particolare GID_MIN e GID_MAX) definiti per il file '/etc/login.defs', puoi usare -K
opzione.
Ad esempio, creiamo un gruppo chiamato 'codificatori' con i valori predefiniti di sovrascrittura per 'GID_MIN' (impostato su 1500) e 'GID_MAX' (impostato su 1700):
# groupadd -K GID_MIN=1500 -K GID_MAX=1700 coders
Il seguente output conferma che il gruppo 'codificatori' è stato creato con GID '1502' che tra i valori GID_MIN e GID_MAX abbiamo impostato:
# grep coders /etc/group
coders:x:1502:
Creazione della password del gruppo
Le password di gruppo non sono utilizzate molto comunemente per motivi di sicurezza, costringendo le persone a condividere una singola password, quando più persone hanno richiesto l'accesso a un particolare gruppo.
Puoi usare -p
opzione per creare una password per un nuovo gruppo.
Nel comando seguente creiamo una password 'password123' per il nuovo gruppo 'codificatori':
# groupadd -p password123 coders
Forza il successo per il gruppo esistente
Come sappiamo, se proviamo a creare un gruppo già esistente, fallirà.
Proviamo ad aggiungere un gruppo esistente 'javaproject' e vediamo quale sarebbe il suo stato di uscita:
# groupadd javaproject
groupadd: group javaproject exists
# echo $?
9
Possiamo vedere che il comando è terminato con un errore. Sì, era ovvio. Ma se vuoi uscire dal comando con successo, quando il gruppo esiste, usa -f
o --force
opzione.
Nel primo comando ho aggiunto -f
opzione e puoi vederlo terminato senza errori. Il secondo comando verifica il codice di uscita e conferma che è andato a buon fine.
# groupadd -f javaproject
# echo $?
0
Conclusione
In questo tutorial, abbiamo imparato come creare un gruppo in Linux e le opzioni del comando groupadd. Il comando Groupadd dovrebbe funzionare su tutte le distribuzioni Linux inclusi Ubuntu, Debian, Centos e Mint.
Spero che ti sia piaciuto leggere e per favore lascia i tuoi suggerimenti nella sezione commenti qui sotto.