Introduzione

Su Linux, i gruppi vengono utilizzati per organizzare e amministrare gli account utente. Lo scopo principale dei gruppi è definire un insieme di privilegi come lettura, scrittura o esecuzione dell'autorizzazione per una determinata risorsa che può essere condivisa tra gli utenti all'interno del gruppo.

In questo articolo, parleremo di come creare nuovi gruppi in Linux, usando il comando groupadd.

Sintassi del comando groupadd

La sintassi generale per il comando groupadd è la seguente:

groupadd [OPTIONS] GROUPNAME

Solo l'utente root o un utente con privilegi sudo possono creare nuovi gruppi.

Quando viene richiamato il comando groupadd questo crea un nuovo gruppo utilizzando le opzioni specificate nella riga di comando più i valori predefiniti specificati nel file /etc/login.defs.

Creare un gruppo in Linux

Per creare un nuovo gruppo digitare groupadd seguito dal nome del nuovo gruppo.

Ad esempio, per creare un nuovo gruppo chiamato mygroup devi eseguire:

groupadd mygroup

Il comando aggiunge una voce per il nuovo gruppo ai file /etc/group e /etc/gshadow.

Una volta creato il gruppo, puoi iniziare ad aggiungere utenti al gruppo.

Se il gruppo con lo stesso nome esiste già, il sistema stamperà un messaggio di errore simile al seguente:

groupadd: group 'mygroup' already exists

Per sopprimere il messaggio di errore se il gruppo esiste e per chiudere correttamente il comando, utilizzare l'opzione -f( --force):

groupadd -f mygroup

Creare un gruppo con GID specifico

Nei sistemi operativi Linux e Unix, i gruppi sono identificati dal nome e da un GID univoco (un numero intero positivo).

Per impostazione predefinita, quando viene creato un nuovo gruppo, il sistema assegna il successivo GID disponibile dall'intervallo di ID gruppo specificato nel file login.defs.

Utilizzare l'opzione -g( --gid) per creare un gruppo con un GID specifico.

Ad esempio, per creare un gruppo denominato mygroup con GID 1010, digitare:

groupadd -g 1010 mygroup

Puoi verificare il GID del gruppo, elencando tutti i gruppi e filtrando il risultato con grep :

getent group | grep mygroup
mygroup:x:1010:

Se esiste già un gruppo con il GID specificato, verrà visualizzato il seguente errore:

groupadd: GID '1010' already exists

Se utilizzato con l'opzione -o( --non-unique), il comando groupadd consente di creare un gruppo con GID non univoco:

groupadd -o -g 1010 mygroup

Creare un gruppo di sistema

Non vi è alcuna reale differenza tecnica tra il sistema e i gruppi normali (normali). Di solito, i gruppi di sistema vengono utilizzati per alcuni scopi operativi specifici del sistema, come la creazione di backup o la manutenzione del sistema.

I GID dei gruppi di sistema vengono scelti dall'intervallo di UD dei gruppi di sistema specificati nel file login.defs, che è diverso dall'intervallo utilizzato per i gruppi regolari.

Utilizzare l'opzione -r( --system) per creare un gruppo di sistema. Ad esempio, per creare un nuovo gruppo di sistemi denominato mysystemgroup è necessario eseguire:

groupadd -r mysystemgroup

Sostituzione dei valori /etc/login.defs predefiniti

L'opzione -K( --key) seguita da KEY=VAL consente di sovrascrivere i valori predefiniti specificati nel file /etc/login.defs.

Fondamentalmente, tutto ciò che puoi sovrascrivere sono i valori massimo e minimo degli ID gruppo normale e di sistema per la selezione GID automatica durante la creazione di un nuovo gruppo.

Supponiamo che tu voglia creare un nuovo gruppo con GID nell'intervallo tra 1200 e 1500. A tale scopo, specifica i valori min/max come mostrato di seguito:

groupadd -K GID_MIN=1200 -K GID_MAX=1500 mygroup

Creare un gruppo di sistema con password

L'aggiunta di una password a un gruppo non ha alcun uso pratico e può causare un problema di sicurezza poiché più utenti dovranno conoscere la password.

L'opzione -p( --password) seguita da password consente di impostare una password per il nuovo gruppo:

groupadd -p grouppassword mygroup

Conclusione

In Linux, è possibile creare nuovi gruppi utilizzando il comando groupadd.