So listen Sie alle Benutzer unter Linux auf

Benutzer sind die wichtigste Komponente in einem Linux-System. Linux stellt den Administratoren integrierte Befehle zur Verfügung, mit denen sie Benutzer effizient verwalten können. Es gibt eine zum Erstellen von Benutzern, Löschen von Benutzern und Ändern von Benutzerberechtigungen. Aber wie sieht es mit der Auflistung aller Benutzer aus, die derzeit auf einem System vorhanden sind?

In diesem Artikel wird erläutert, wie Sie eine Liste aller Benutzer unter Linux sowie eine kurze Anleitung zum Überprüfen, ob ein Benutzer auf einem System vorhanden ist oder nicht, abrufen können.

So zeigen Sie eine Liste aller Benutzer unter Linux an

Wenn Sie einen neuen Benutzer erstellen, werden der Benutzername, das Kennwort und andere Details in bestimmten Dateien auf einem Linux-Computer gespeichert. Glücklicherweise können Sie mit Linux solche Dateien ohne Einschränkungen lesen und ändern. Mithilfe dieser Dateien können Sie Informationen zu Benutzern wie Benutzernamen, Benutzeranzahl und mehr kennen.

Verwenden der Passwd-Datei

Die passwd- Datei ist eine Textdatei, die die Kennwortdatensätze aller Benutzer enthält, die derzeit in Ihrem System vorhanden sind. Diese Datei befindet sich im Verzeichnis / etc in Ihrem lokalen Speicher und enthält die folgenden Informationen:

  1. Benutzernamen
  2. Verschlüsselte Passwörter
  3. Benutzeridentifikation
  4. Benutzergruppen-ID
  5. Vollständiger Name
  6. Das Verzeichnis / home des Benutzers
  7. Login-Shell des Benutzers

Geben Sie cat / etc / passwd oder weniger / etc / passwd in Ihr Terminal ein, um die Textdatei zu lesen. Wenn Sie die Datei / etc / passwd öffnen , wird eine Ausgabe generiert, die ungefähr so ​​aussieht.

 root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh

Die oben genannte Ausgabe enthält sieben Felder, die Informationen zu den Benutzern enthalten. Diese Felder werden durch ein Trennzeichen getrennt – in diesem Fall durch einen Doppelpunkt. Jede Zeile in der Ausgabe bezeichnet einen einzelnen Benutzer.

So erhalten Sie mithilfe der passwd- Datei eine Liste aller Benutzernamen:

 awk -F: '{ print $1}' /etc/passwd

Awk ist ein Befehlszeilenprogramm, mit dem Linux-Benutzer einfache "einzeilige" Programme erstellen können, die schnelle Vorgänge vom Terminal aus ausführen. Im oben genannten Code:

  1. -F steht für Feldtrennzeichen. Da das Doppelpunktzeichen das Trennzeichen in der Datei / etc / passwd ist, übergeben wir den Doppelpunkt als Trennzeichen im Befehl awk.
  2. {print $ 1} weist das System an, das erste Feld zu drucken. In diesem Fall ist das erste Feld der Benutzername der Benutzer.
  3. Die Datei / etc / passwd enthält die Daten, die sich auf die Benutzer beziehen.

Wenn Sie den obigen Befehl ausführen, werden die Benutzernamen aller Benutzer ausgegeben. Da die Datei / etc / passwd Systembenutzer enthält, enthält die Ausgabe auch deren Benutzernamen.

 root
daemon
bin
sys
sync
games
man

Sie können den Befehl awk leicht anpassen, um die vollständigen Namen der Benutzer auszudrucken. Geben Sie den folgenden Befehl ein, um die vollständigen Namen der Benutzer unter Linux anzuzeigen:

 awk -F: '{ print $5}' /etc/passwd

Da Systembenutzer denselben Benutzernamen und denselben vollständigen Namen haben, werden Sie keinen Unterschied in der Ausgabe bemerken. Nur die Benutzer, die Sie Ihrem System hinzugefügt haben, haben unterschiedliche Benutzernamen und vollständige Namen.

Alternativ können Sie anstelle des Befehls awk auch cut verwenden. Die Syntax von cut ist dem Befehl awk ziemlich ähnlich.

So drucken Sie die Benutzernamen unter Linux mit cut:

 cut -d: f1 /etc/passwd

Hier ist -d das Trennzeichen, f1 das erste Feld (Benutzername) und / etc / passwd die Textdatei, die die Daten enthält.

So drucken Sie die Vornamen von Benutzern mit cut:

 cut -d: f5 /etc/passwd

Ebenso können Sie andere Felder aus der Datei / etc / passwd ausgeben, indem Sie einfach f5 durch f1-f7 ersetzen.

Verwandte: So ändern Sie Ihr Linux-Passwort

Benutzer mit dem Befehl getent auflisten

Der Befehl getent druckt den Inhalt wichtiger Textdateien, die als Datenbank für das System dienen. Dateien wie / etc / passwd und /etc/nsswitch.conf enthalten Informationen zu Benutzern bzw. Netzwerken und können mit dem Befehl getent gelesen werden.

So drucken Sie den Inhalt der Datei / etc / passwd mit getent:

 getent passwd

Die Ausgabe enthält sieben verschiedene Felder, die durch das Doppelpunktzeichen getrennt sind. Jedes Feld ist für bestimmte Informationen reserviert, einschließlich der Benutzernamen und Basisverzeichnispfade der Benutzer.

 root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh

Sie können den Befehl getent mit awk oder cut verketten, um nur die Liste der Benutzernamen abzurufen.

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

So drucken Sie die vollständigen Namen der Benutzer:

 getent passwd | awk -F: '{print $5}'
getent passwd | cut -d: -f5

Überprüfen Sie, ob ein Benutzer vorhanden ist oder nicht

In einigen Situationen möchten Sie möglicherweise überprüfen, ob auf Ihrem Linux-System ein Benutzer vorhanden ist oder nicht. Der Befehl grep ist praktisch, wenn Sie ein bestimmtes Textmuster aus einer Datei abrufen möchten.

Sie können einen der folgenden Befehle verwenden, um die Existenz eines Benutzers zu überprüfen.

 compgen -u | grep username
getent passwd | grep username

Wenn der Benutzer vorhanden ist, werden die ihm zugeordneten Anmeldeinformationen auf dem Bildschirm angezeigt. Wenn der Benutzer jedoch nicht im System vorhanden ist, tritt ein Fehler auf.

So überprüfen Sie, ob ein Benutzer auf einem System vorhanden ist, ohne grep zu verwenden:

 getent passwd username

Sie können den Befehl getent oder compgen auch mit grep und echo weiterleiten , um benutzerdefinierte Ausgaben anzuzeigen.

 getent passwd | grep -q username && echo "User found" || echo "User not found"
compgen -u | grep -q username && echo "User found" || echo "User not found"

Der obige Befehl gibt "Benutzer gefunden" aus, wenn der Benutzer auf dem System vorhanden ist, und "Benutzer nicht gefunden", wenn dies nicht der Fall ist.

Zählen Sie die Anzahl der Benutzer auf einem System

So zählen Sie die Anzahl der Benutzer, die auf einem Linux-System vorhanden sind:

 compgen -u | wc -l
getent passwd | wc -l

In den obigen Befehlen sind compgen und getent dafür verantwortlich, die Liste mit allen Benutzern und anderen damit verbundenen Informationen anzuzeigen. Das wc steht für Word Count und wird verwendet, um die Anzahl der Wörter oder Zeilen in der Ausgabe zu zählen. Das Flag -l kennzeichnet Linien .

Überprüfen von Benutzerkonten unter Linux

Jeder Linux-Administrator sollte wissen, wie er andere Benutzer auf einem System verwalten und verwalten kann. Das Beherrschen von Linux-Befehlen, mit denen Sie andere Benutzer erstellen, entfernen, steuern und auflisten können, ist eine hervorragende Möglichkeit, um mit der Benutzerverwaltung zu beginnen.

Sich mit der Linux-Umgebung vertraut zu machen, sollte Ihr erstes Ziel sein, wenn Sie nur ein Anfänger sind. Es gibt bestimmte Dinge, die Sie direkt nach der Installation Ihrer ersten Linux-Distribution tun müssen. Das Erlernen einiger grundlegender Befehle ist einer davon und für die Ausführung einfacher Computeraufgaben unter Linux unerlässlich.