Verwendung des Befehls "groups"
Der Befehl groups
in Linux ist ein vielseitiges Tool, mit dem du die Gruppenzugehörigkeit von Benutzern auf deinem System ermitteln kannst. Unabhängig davon, ob du die Mitgliedschaft eines bestimmten Benutzers oder einer Gruppe von Benutzern überprüfen oder Gruppen rekursiv auflösen musst, bietet groups
dir die nötigen Optionen.
Anzeigen aller Gruppen eines Benutzers
Um alle Gruppen aufzulisten, denen ein bestimmter Benutzer angehört, verwende die folgende Syntax:
groups Benutzername
Beispiel:
groups alex
alex : alex users wheel adm cdrom floppy sudo audio video plugdev lpadmin samba
Anzeigen nur der primären Gruppe eines Benutzers
Wenn du nur die primäre Gruppe eines Benutzers anzeigen möchtest, verwende die Option -p
:
groups -p Benutzername
Beispiel:
groups -p alex
alex : alex
Anzeigen von Gruppenmitgliedschaften rekursiv
Die Option -r
ermöglicht es dir, Gruppenmitgliedschaften rekursiv anzuzeigen. Dies listet alle Gruppen auf, denen ein Benutzer direkt oder indirekt angehört.
groups -r Benutzername
Beispiel:
groups -r alex
alex : alex users wheel adm cdrom floppy sudo audio video plugdev lpadmin samba
...
Anzeigen aller Gruppen eines Benutzers
Um eine Liste aller Gruppen anzuzeigen, zu denen ein bestimmter Benutzer gehört, verwende den Befehl groups
gefolgt vom Benutzernamen:
groups <Benutzername>
Beispiel:
groups maria
Ausgabe:
maria : maria users sudo
In diesem Beispiel gehört der Benutzer maria
zu den Gruppen maria
, users
und sudo
.
Anzeigen von Gruppeninformationen
Der Befehl groups
zeigt nicht nur die Namen der Gruppen an, sondern auch einige zusätzliche Informationen:
- Benutzername: Der Name des Benutzers, dessen Gruppenmitgliedschaften angezeigt werden.
- Gruppenname: Der Name der Gruppe, zu der der Benutzer gehört.
- GID: Die Gruppen-ID, eine eindeutige Nummer, die jeder Gruppe zugewiesen ist.
Diese Informationen können hilfreich sein, wenn du nach einer bestimmten Gruppe suchst oder die Gruppenzugehörigkeit eines Benutzers verwalten möchtest.
Anzeigen nur der primären Gruppe eines Benutzers
Deine primäre Gruppe ist die Gruppe, der du standardmäßig beim Anmelden an deinem System zugewiesen wirst. Wenn du nur die primäre Gruppe eines Benutzers anzeigen möchtest, verwende die Option -g
des Befehls groups
:
groups -g username
Ersetze username
durch den Benutzernamen des Benutzers, dessen primäre Gruppe du anzeigen möchtest.
Beispiele
Um beispielsweise die primäre Gruppe des Benutzers alice
anzuzeigen, würdest du Folgendes eingeben:
groups -g alice
Die Ausgabe würde so aussehen:
alice : alice
In diesem Beispiel ist alice
sowohl der Benutzername als auch der Name der primären Gruppe des Benutzers.
Anzeigen von Gruppenmitgliedschaften rekursiv
Neben der Anzeige der primären und sekundären Gruppen kannst du auch alle Gruppen auflisten, zu denen ein Benutzer rekursiv gehört. Dies ist nützlich, um die gesamte Gruppenzugehörigkeit eines Benutzers zu ermitteln, einschließlich aller verschachtelten Gruppenmitgliedschaften.
Syntax
Um die Gruppenmitgliedschaften eines Benutzers rekursiv anzuzeigen, verwende die folgende Syntax:
groups -r BENUTZERNAME
Wobei BENUTZERNAME
der Name des Benutzers ist, dessen Gruppenzugehörigkeit rekursiv angezeigt werden soll.
Beispiel
Im folgenden Beispiel werden alle Gruppen aufgelistet, zu denen der Benutzer alice
rekursiv gehört:
groups -r alice
Ausgabe:
alice : alice staff users wheel
Wie du siehst, werden alle direkten und indirekten Gruppenmitgliedschaften für den Benutzer aufgelistet. In diesem Fall gehört der Benutzer alice
zu den Gruppen alice
, staff
, users
und wheel
. Die Gruppe alice
ist die primäre Gruppe des Benutzers, während die anderen Gruppen sekundäre Gruppen sind.
Weitere Optionen
Zusammen mit der Option -r
kannst du auch andere Optionen verwenden, um die Ausgabe anzupassen:
-
-o
: Zeigt die Gruppen-IDs anstelle der Gruppennamen an. -
-a
: Zeigt alle Gruppenmitgliedschaften des Benutzers an, auch die indirekten. -
-f
: Zeigt die Gruppenmitgliedschaften in einem flachen Format an, ohne Verschachtelung.
Anzeigen von Gruppenmitgliedschaften für mehrere Benutzer
Wenn du die Gruppenzugehörigkeit mehrerer Benutzer gleichzeitig anzeigen möchtest, kannst du den Befehl groups
zusammen mit der Option -a
(alle) verwenden:
groups -a benutzer1 benutzer2 benutzer3
Dieser Befehl gibt eine Liste aller Gruppen aus, zu denen jeder der angegebenen Benutzer gehört, einschließlich ihrer primären Gruppen.
Rekursive Anzeige von Gruppenmitgliedschaften
Wenn du auch die Gruppenmitgliedschaften anzeigen möchtest, die sich aus den Mitgliedschaften des Benutzers in anderen Gruppen ergeben, kannst du die Option -R
(rekursiv) verwenden:
groups -a -R benutzer1 benutzer2 benutzer3
Diese Option zeigt alle Gruppen an, zu denen der Benutzer direkt oder indirekt gehört, selbst wenn diese Gruppen nicht explizit in seinem Gruppenkonto aufgelistet sind.
Filtern von Gruppen nach Name oder ID
Du kannst die Gruppenzugehörigkeit auch nach Gruppenname oder -ID filtern. Verwende dazu die Option -G
(Gruppe) zusammen mit dem Namen oder der ID der Gruppe:
groups -a -G gruppe1 benutzer1 benutzer2 benutzer3
Dieser Befehl zeigt nur die Benutzer an, die Mitglied der angegebenen Gruppe sind.
Optionale Argumente
Neben den oben genannten Optionen kannst du auch folgende optionale Argumente verwenden:
-
-p
: Zeigt nur die primären Gruppen der Benutzer an. -
-s
: Zeigt nur die Gruppennamen an, keine zusätzlichen Informationen. -
-E
: Zeigt eine detailliertere Ausgabe an, einschließlich der Gruppen-ID und der Beschreibung.
Filtern von Gruppen nach Namen oder ID
Mit dem Befehl groups
kannst du auch Gruppen nach Namen oder ID filtern. Dies ist nützlich, wenn du nur an bestimmten Gruppen interessiert bist.
Gruppen nach Name filtern
Um Gruppen nach Name zu filtern, verwende die Option -f
. Nach dem -f
gibst du den Namen der Gruppe ein, nach der du filtern möchtest.
groups -f sudo
Gruppen nach ID filtern
Um Gruppen nach ID zu filtern, verwende die Option -G
. Nach dem -G
gibst du die ID der Gruppe ein, nach der du filtern möchtest.
groups -G 100
Kombination von Filtern
Du kannst die Optionen -f
und -G
kombinieren, um Gruppen zu finden, die bestimmten Kriterien entsprechen. Beispielsweise kannst du die folgenden Optionen verwenden, um alle Gruppen mit dem Namen sudo
zu finden, die eine ID kleiner als 100 haben:
groups -f sudo -G 100
Sonderfälle
- Um alle Gruppen anzuzeigen, die einen bestimmten Benutzer enthalten, kannst du die Option
-v
verwenden. Beispielsweise zeigt der folgende Befehl alle Gruppen an, die den Benutzerjohndoe
enthalten:
groups -v johndoe
- Um die primäre Gruppe eines Benutzers anzuzeigen, kannst du die Option
-p
verwenden. Beispielsweise zeigt der folgende Befehl die primäre Gruppe des Benutzersjohndoe
an:
groups -p johndoe