• Allgemein
  • Gruppenzugehörigkeit eines Benutzers unter Linux auflisten

Gruppenzugehörigkeit eines Benutzers unter Linux auflisten

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 Benutzer johndoe 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 Benutzers johndoe an:
groups -p johndoe