GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie man Gruppen in Linux auflistet

Unter Linux ist eine Gruppe eine Sammlung von Benutzern. Der Hauptzweck der Gruppen besteht darin, eine Reihe von Berechtigungen wie Lese-, Schreib- oder Ausführungsberechtigungen für eine bestimmte Ressource zu definieren, die von den Benutzern innerhalb der Gruppe gemeinsam genutzt werden können. Benutzer können zu einer bestehenden Gruppe hinzugefügt werden, um die gewährten Privilegien zu nutzen.

In diesem Tutorial wird erklärt, wie Sie alle Gruppen anzeigen, in denen ein Benutzer Mitglied ist. Wir erklären auch, wie man alle Mitglieder einer Gruppe auflistet.

Linux-Gruppen #

Es gibt zwei Arten von Gruppen, denen ein Benutzer angehören kann:

  • Primäre oder Login-Gruppe – ist die Gruppe, die den vom Benutzer erstellten Dateien zugeordnet ist. Normalerweise ist der Name der primären Gruppe derselbe wie der Name des Benutzers. Jeder Benutzer muss genau einer primären Gruppe angehören.

  • Neben- oder Ergänzungsgruppe - Wird verwendet, um bestimmten Benutzern bestimmte Berechtigungen zu erteilen. Ein Benutzer kann Mitglied von null oder mehreren sekundären Gruppen sein.

Listen Sie alle Gruppen auf, in denen ein Benutzer Mitglied ist #

Es gibt mehrere Möglichkeiten, herauszufinden, zu welchen Gruppen ein Benutzer gehört.

Die Gruppe des primären Benutzers wird in /etc/passwd gespeichert Datei und die zusätzlichen Gruppen, falls vorhanden, sind in /etc/group aufgeführt Datei.

Eine Möglichkeit, die Gruppen des Benutzers zu finden, besteht darin, den Inhalt dieser Dateien mit cat aufzulisten , less oder grep . Eine weitere einfachere Option ist die Verwendung eines Befehls, dessen Zweck es ist, Informationen über die Benutzer und Gruppen des Systems bereitzustellen.

Verwenden der groups Befehl #

Der denkwürdigste Befehl zum Auflisten aller Gruppen, in denen ein Benutzer Mitglied ist, ist groups Befehl. Wenn der Befehl ohne Argument ausgeführt wird, druckt er eine Liste aller Gruppen, denen der aktuell angemeldete Benutzer angehört:

groups

Die erste Gruppe ist die primäre Gruppe.

john adm cdrom sudo dip plugdev lpadmin sambashare

Um eine Liste aller Gruppen zu erhalten, denen ein bestimmter Benutzer angehört, geben Sie den Benutzernamen für die groups an Befehl als Argument:

groups linuxize

Wie zuvor ist die erste Gruppe die primäre Gruppe.

linuxize : linuxize sudo

Verwendung der id Befehl #

Die id Der Befehl gibt Informationen über den angegebenen Benutzer und seine Gruppen aus. Wenn der Benutzername weggelassen wird, werden Informationen für den aktuellen Benutzer angezeigt.

Zum Beispiel, um Informationen über den Benutzer linuxize zu erhalten Sie würden Folgendes eingeben:

id linuxize

Der Befehl zeigt die Benutzer-ID (uid ), die primäre Gruppe des Benutzers (gid ) und die sekundären Gruppen des Benutzers (groups )

uid=1001(linuxize) gid=1001(linuxize) groups=1001(linuxize),27(sudo)

Um statt der Nummern nur die Namen zu drucken, verwenden Sie den -n Möglichkeit. Option -g druckt nur die primäre Gruppe und -G alle Gruppen.

Der folgende Befehl gibt die Namen der Gruppen aus, in denen der aktuelle Benutzer Mitglied ist:

id -nG
john adm cdrom sudo dip plugdev lpadmin sambashare

Alle Mitglieder einer Gruppe auflisten #

Um alle Mitglieder einer Gruppe aufzulisten, verwenden Sie getent group Befehl gefolgt vom Gruppennamen.

Zum Beispiel, um die Mitglieder einer Gruppe mit dem Namen developers herauszufinden Sie würden den folgenden Befehl verwenden:

getent group developers

Wenn die Gruppe existiert, gibt der Befehl die Gruppe und alle ihre Mitglieder aus:

developers:x:126:frank,mary

Wenn es keine Ausgabe gibt, bedeutet dies, dass die Gruppe nicht existiert.

Alle Gruppen auflisten #

Um alle auf dem System vorhandenen Gruppen anzuzeigen, öffnen Sie einfach /etc/group Datei. Jede Zeile in dieser Datei stellt Informationen für eine Gruppe dar.

less /etc/group

Eine andere Möglichkeit ist die Verwendung von getent Befehl, der Einträge aus Datenbanken anzeigt, die in /etc/nsswitch.conf konfiguriert sind Datei einschließlich der group Datenbank, mit der wir eine Liste aller Gruppen abfragen können.

Um eine Liste aller Gruppen zu erhalten, geben Sie den folgenden Befehl ein:

getent group

Die Ausgabe ist die gleiche wie bei der Anzeige des Inhalts der /etc/group Datei. Wenn Sie LDAP für die Benutzerauthentifizierung verwenden, wird getent zeigt alle Gruppen von beiden /etc/group an Datei und LDAP-Datenbank.

Sie können auch awk verwenden oder cut um nur das erste Feld zu drucken, das den Namen der Gruppe enthält:

getent group | awk -F: '{ print $1}'
getent group | cut -d: -f1

Schlussfolgerung #

In diesem Tutorial haben Sie gelernt, wie Sie die Gruppen finden, denen ein Benutzer angehört. Dieselben Befehle gelten für alle Linux-Distributionen, einschließlich Ubuntu, CentOS, RHEL, Debian und Linux Mint.

Fühlen Sie sich frei, einen Kommentar zu hinterlassen, wenn Sie Fragen haben.


Linux
  1. So verwenden Sie den Linux-SS-Befehl

  2. So fügen Sie Benutzer zu einer Gruppe in Linux hinzu

  3. Wie kann ich eine Gruppe hinzufügen / auflisten / entfernen?

  4. Mitglieder einer Gruppe in Linux auflisten

  5. Wie listet man alle Benutzer in einer Linux-Gruppe auf?

So listen Sie Festplatten unter Linux auf

So listen Sie Dienste unter Linux auf

So listen Sie Benutzer und Gruppen unter Linux auf

So listen Sie alle Benutzer einer Gruppe in Linux auf

Gruppenverwaltungsbefehle in Linux

Wie listet man alle Gruppen in Linux auf?