Come elencare i gruppi con gid in redhat?


42

Ho prima elencato i gruppi usando:

groups 

Ho aggiunto il gruppo usando

groupadd -g 300 oinstall
groupadd –g 500 dba

e poi quando lo faccio

groups 
root bin daemon sys adm disk wheel sfcb

Non riesco a trovare i gruppi che ho aggiunto. Come elencare i gruppi con ID gruppo? Inoltre, se provo ad aggiungerlo di nuovo, dice che i gruppi sono già presenti.

Risposte:


67

Il groupscomando elenca i gruppi di cui l'utente è attualmente membro, non tutti i gruppi disponibili sul sistema. Puoi cercare un gruppo per nome o gid usando il getentcomando.

getent group oinstall
getent group 500

Per mostrare tutti i gruppi, basta lasciare la query di ricerca fuori dal comando:

getent group

2
@Kitex perché hai creato il gruppo ma non ne sei membro. Devi aggiungere il tuo utente al gruppo, quindi disconnettersi e riconnettersi affinché venga visualizzato con il groupscomando.
Giordania,

1
@kitex Ho aggiornato leggermente il testo, spero che ti aiuti a capire.
Giordania,

2
@Kitex ha aggiornato la risposta
jordanm il

3
@kinkajou molta esperienza professionale e molto tempo trascorso su siti come questo e il supporto IRC Linux. Sono stato un professionista e un appassionato per circa 8 anni. Penso che essere un appassionato sia una parte importante perché è più probabile che tu ricordi cose a cui tieni.
Giordania,

1
@kinkajou Ho usato Gnu / Linux per tutto il mio computer a casa. Desktop, laptop, raspberry-pi's. Lo uso dal 1991 (originariamente Gnu su Solaris, Dic, HP). Continuo ad aggiungere alle mie conoscenze; Non c'è bisogno di superarlo e ricominciare (come con Windows di Microsoft).
ctrl-alt-delor,

9

È possibile elencare i gruppi utilizzando getento, se non presente, cercare/etc/group

Quando si esegue il comando, il GID è il terzo valore nell'output, ad esempio:

$ getent group
man:x:15:
audio:x:63:
nobody:x:99:
users:x:100:
<--snipped-->
utmp:x:22:

Quindi, per elencare solo i nomi di gruppo e il loro GID, usa awkper stampare le colonne che vuoi in questo modo:

$ getent group | awk -F ":" '{ print $1,$3 }'
man 15
audio 63
nobody 99
users 100
<--snipped-->
utmp 22

Vedi anche http://man7.org/linux/man-pages/man1/getent.1.html

Nel caso che getentnon sia presente.

$ grep $group /etc/group

Il GID è il 3o valore nell'output. Per esempio

$ grep users /etc/group
users:x:100:

In quanto sopra, il GID per gli utenti del gruppo è 100. Per ottenere solo il nome del gruppo e GID, è possibile utilizzare awk e grep in questo modo:

$ cat /etc/group | awk -F ":" '{ print $1,$3 }' 
man 15
audio 63
nobody 99
users 100
<--snipped-->
utmp 22

Tenere presente che per i sistemi configurati per l'utilizzo dell'autenticazione esterna (come LDAP), tutti i gruppi non saranno presenti nel file / etc / group. Vedi anche http://www.cyberciti.biz/faq/understanding-etcgroup-file/


6
I gruppi non sono sempre memorizzati /etc/group. Potrebbero essere memorizzati in NIS, LDAP, ecc.
Giordania,

1
Non lavorare con il gruppo LDAP, l'uso getent group.
MUY Belgio,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.