Un gruppo è semplicemente una lista di utenti. I gruppi sono identificati dal loro nome di gruppo e dal loro GID (Group ID). In FreeBSD (e nella maggior parte dei sistemi UNIX® like), i due fattori che il kernel usa per decidere se un processo è autorizzato a fare qualcosa sono il suo ID utente e la lista dei gruppi a cui appartiene. A differenza di un ID utente, un processo ha una lista di gruppi a cui è associato. Se senti qualcosa che si riferisce all'“ID gruppo” di un utente o di un processo, la maggior parte delle volte, questo si riferisce semplicemente al primo gruppo nella lista.
L'associazione ID gruppo - nome gruppo si trova in /etc/group. Questo è un file di testo normale con quattro campi delimitati da due-punti. Il primo campo è il nome gruppo, il secondo la password crittata, il terzo l'ID gruppo, e il quarto una lista membri divisi da virgole. Può essere editato a mano in modo sicuro (sempre che tu non commetta errori di sintassi!). Per una descrizione più completa della sintassi, consulta la pagina di manuale group(5).
Se non vuoi editare a mano il file /etc/group, puoi usare il comando pw(8) per aggiungere ed editare gruppi. Per esempio, per aggiungere un gruppo chiamato teamtwo e confermare che esiste puoi usare:
Esempio 13-7. Aggiungere un gruppo usando pw(8)
# pw groupadd teamtwo # pw groupshow teamtwo teamtwo:*:1100:
Il numero 1100 sopra è l'ID di gruppo del gruppo teamtwo. In questo momento teamtwo non ha membri, e quindi è abbastanza inutile. Cambiamolo invitando jru al gruppo teamtwo.
Esempio 13-8. Aggiungere Qualcuno al Gruppo usando pw(8)
# pw groupmod teamtwo -M jru # pw groupshow teamtwo teamtwo:*:1100:jru
L'argomento all'opzione -M
è una lista divisa da
virgole di utenti che sono membri del gruppo. Dalle sezioni precedenti, sappiamo che il
file delle password contiene anche un gruppo per ogni utente. Il secondo (l'utente)
è automaticamente aggiunto dalla lista del gruppo; l'utente non verrà
mostrato come membro quando si usa il comando groupshow
di pw(8), ma verrà
mostrato quando l'informazione viene ricercata attraverso id(1) o tool simili.
In altre parole pw(8) manipola solo il
file /etc/group; non cercherà mai di leggere dati
addizionali da /etc/passwd.
Esempio 13-9. Usare id(1) per Determinare l'Appartenenza al Gruppo.
% id jru uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo)
Come puoi vedere,jru è un membro dei gruppi jru e teamtwo .
Per maggiori informazioni a proposito di pw(8), consulta la sua pagina di manuale, e per maggiori informazioni sul formato di /etc/group, consulta la pagina di manuale group(5).
Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Per domande su FreeBSD, leggi la documentazione prima di contattare <questions@FreeBSD.org>.
Per domande su questa documentazione, invia una e-mail a <doc@FreeBSD.org>.