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

Wie listet man alle Gruppen in Linux auf?

Linux-Gruppen sind eine Sammlung von Benutzern. Sie sollen einer Gruppe von Benutzern auf einfache Weise Berechtigungen gewähren. In diesem Tutorial sehen wir uns verschiedene Möglichkeiten an, alle Gruppen in Linux aufzulisten.

2 Möglichkeiten zum Auflisten aller Gruppen in Linux

  1. /etc/group-Datei
  2. getent-Befehl

1. /etc/group-Datei

Die Datei /etc/group enthält alle lokalen Gruppen. Wir können also diese Datei öffnen und uns alle Gruppen ansehen.

root@localhost:~# cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
...

Wenn Sie nach einer bestimmten Gruppe suchen, verwenden Sie den grep-Befehl, um sie herauszufiltern.

root@localhost:~# cat /etc/group | grep sudo
sudo:x:27:journaldev,test
root@localhost:~#

2. getent-Befehl

Linux getent Befehl Einträge aus Datenbanken abrufen, die von den Name Service Switch-Bibliotheken unterstützt werden. Wir können es verwenden, um alle Gruppeninformationen aus der Gruppendatenbank zu erhalten.

root@localhost:~# getent group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog
tty:x:5:
...

Sehen wir uns einige weitere Beispiele für die Auflistung aller Gruppen in Linux an.

Linux listet alle Gruppennamen auf

Wir können den cut-Befehl verwenden, um nur die Gruppennamen zu drucken. Dies ist nützlich, wenn wir in einem Shell-Skript nach einem bestimmten Gruppennamen suchen.

root@localhost:~# cut -d: -f1 /etc/group
root
daemon
bin
sys
adm
tty
...

Wir können den cut-Befehl auch mit dem getent-Befehl verwenden.

root@localhost:~# getent group | cut -d: -f1
root
daemon
bin
sys
adm
tty
disk
...

Der Cut-Befehl teilt jede Zeile mit dem Trennzeichen Doppelpunkt (:). Dann wird das erste Feld, der Gruppenname, mit der Option -f1 ausgewählt.

Auflistung aller Gruppennamen in alphabetischer Reihenfolge

Die obige Befehlsausgabe kann an den sort-Befehl übergeben werden, um die Ausgabe in natürlicher Sortierreihenfolge zu drucken.

root@localhost:~# getent group | cut -d: -f1 | sort
adm
audio
backup
bin
cdrom
crontab
daemon
...

Anzahl aller Linux-Gruppen

Wenn Sie an der Anzahl der Linux-Gruppen interessiert sind, verwenden Sie die folgenden Befehle.

root@localhost:~# cat /etc/group | grep -c ""
68
root@localhost:~# getent group | grep -c ""
68
root@localhost:~#

Alle Gruppen eines Benutzers auflisten

Wir können den Gruppenbefehl verwenden, um alle Gruppen eines Benutzers zu erhalten.

root@localhost:~# groups journaldev
journaldev : journaldev sudo test_users test_users_pwd
root@localhost:~# 

root@localhost:~# groups root
root : root
root@localhost:~#

Gruppen des aktuellen Benutzers auflisten

Wenn Sie den Gruppenbefehl ohne Benutzereingabe ausführen, werden die Gruppen des aktuellen Benutzers gedruckt.

root@localhost:~# groups
root
root@localhost:~# su - journaldev
journaldev@localhost:~$ groups
journaldev sudo test_users test_users_pwd
journaldev@localhost:~$ 

Benutzergruppen zusammen mit der Gruppen-ID auflisten

Wir können den Befehl id verwenden, um die Benutzerinformationen zu drucken. Dieser Befehl listet alle Gruppen zusammen mit ihrer Gruppen-ID auf.

root@localhost:~# id journaldev
uid=1002(journaldev) gid=1003(journaldev) groups=1003(journaldev),27(sudo),1004(test_users),1007(test_users_pwd)
root@localhost:~# 
root@localhost:~# id root
uid=0(root) gid=0(root) groups=0(root)
root@localhost:~# 

Alle Benutzer einer Gruppe auflisten

Wir können den Befehl getent oder die Datei /etc/groups verwenden, um alle Benutzer zu erhalten, die zu einer Gruppe gehören.

root@localhost:~# getent group sudo
sudo:x:27:journaldev,test
root@localhost:~# 
root@localhost:~# getent group sudo | cut -d: -f4
journaldev,test
root@localhost:~# 

Schlussfolgerung

Der Befehl getent und die Datei /etc/group können verwendet werden, um alle Details der Linux-Gruppen abzurufen. Wir können sie zusammen mit den Befehlen cut und sort verwenden, um die Ausgabe besser darzustellen.

Referenzen

  • Get Manpage
  • Cut-Befehl-Manpage

Linux
  1. So finden Sie die Liste aller offenen Ports in Linux heraus

  2. So listen Sie alle installierten Pakete in Linux auf

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

  4. Wie kann ich alle gesperrten Benutzer in Linux auflisten?

  5. Wie listet man alle Dateien einer Partition unter Linux auf?

So listen Sie Festplattenpartitionen unter Linux auf

So listen Sie Benutzer unter Linux auf

So finden Sie alle installierten Schriftarten in Linux

So listen Sie Benutzer und Gruppen unter Linux auf

So listen Sie alle Benutzer einer Gruppe in Linux auf

Wie listet man alle Dateien in Linux nach Größe sortiert auf?