it-swarm.com.de

Wie liste ich Gruppen mit gid in redhat auf?

Ich habe die Gruppen zuerst aufgelistet mit:

groups 

Ich habe die Gruppe mit hinzugefügt

groupadd -g 300 oinstall
groupadd –g 500 dba

und dann, wenn ich es tue

groups 
root bin daemon sys adm disk wheel sfcb

Ich kann keine Gruppen finden, die ich hinzugefügt habe. Wie liste ich Gruppen mit Gruppen-ID auf? Wenn ich versuche, es erneut hinzuzufügen, heißt es außerdem, dass bereits Gruppen vorhanden sind.

42
kinkajou

Der Befehl groups listet Gruppen auf, zu denen der Benutzer derzeit gehört, nicht alle auf dem System verfügbaren Gruppen. Sie können eine Gruppe mit dem Befehl getent nach Namen oder GID suchen.

getent group oinstall
getent group 500

Um alle Gruppen anzuzeigen, lassen Sie Ihre Suchanfrage einfach aus dem Befehl heraus:

getent group
68
jordanm

Sie können Gruppen mit getent auflisten oder, falls nicht vorhanden, in /etc/group

Beim Ausführen des Befehls ist die GID der dritte Wert in der Ausgabe, z.

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

Um also nur Gruppennamen und deren GID aufzulisten, verwenden Sie awk, um die gewünschten Spalten wie folgt zu drucken:

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

Siehe auch http://man7.org/linux/man-pages/man1/getent.1.html

Für den Fall, dass getent nicht vorhanden ist.

$ grep $group /etc/group

Die GID ist der 3. Wert in der Ausgabe. Z.B

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

Oben ist die GID für die Gruppenbenutzer 100. Um nur den Gruppennamen und die GID abzurufen, können Sie awk und grep wie folgt verwenden:

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

Beachten Sie, dass bei Systemen, die für die Verwendung der externen Authentifizierung eingerichtet sind (z. B. LDAP), nicht alle Gruppen in der Datei/etc/group vorhanden sind. Siehe auch http://www.cyberciti.biz/faq/understanding-etcgroup-file/

9
M_dk