Linux Benutzer anzeigen: Befehle, Tools und Automatisierungstipps
Sep 01, 2026
/
By Faradilla A.
/
5 Min Lesezeit
Die gängigste Methode, um Linux-Benutzer anzuzeigen, ist das Auslesen der Datei /etc/passwd, in der wichtige Informationen zu jedem Benutzerkonto im System gespeichert sind.
Das Auflisten von Benutzern gehört zu den grundlegenden Aufgaben der Systemadministration. So können Sie prüfen, wer angemeldet ist, Konten nach Benutzer-ID filtern und Überprüfungen automatisieren, um die Systemsicherheit zu gewährleisten.
Die folgenden Befehle können Sie verwenden, um Linux-Benutzer aufzulisten:
- cat. Eignet sich für einen schnellen, ungefilterten Überblick über alle lokalen Benutzer.
- getent. Ideal, um Benutzer aus lokalen und Netzwerkdatenbanken wie LDAP aufzulisten.
- compgen. Eignet sich zum Erstellen einer übersichtlichen Liste von Benutzernamen für Skripte und die automatische Vervollständigung.
- awk und cut. Eignen sich zum Filtern der Ausgabe, sodass nur Benutzernamen angezeigt werden.
- who und users. Zeigen an, welche Benutzer aktuell angemeldet sind.
Voraussetzungen für das Auflisten von Linux-Benutzern
Bevor Sie Benutzer unter Linux auflisten, benötigen Sie Zugriff auf ein Terminal. Das gilt sowohl für einen lokalen Rechner als auch für ein Remote-System wie einen Virtual Private Server (VPS).
Wenn Sie einen VPS verwalten, stellen Sie über einen SSH-Client mit folgender Syntax eine Verbindung her:
ssh username@your_server_ip
Jeder Benutzer kann die Datei /etc/passwd lesen und grundlegende Befehle zum Auflisten von Benutzern ausführen. Administrative Aktionen wie das Erstellen, Ändern oder Löschen von Benutzern erfordern jedoch root– oder sudo-Zugriff.
So listen Sie Benutzer mit dem Befehl cat auf
Am einfachsten lassen sich alle Benutzer auflisten, indem Sie mit dem Befehl cat den Inhalt der Datei /etc/passwd ausgeben. Die Datei enthält Angaben zu jedem Benutzer im System, darunter Systemkonten und reguläre Benutzer.
Führen Sie den folgenden Befehl aus, um die Datei anzuzeigen:
cat /etc/passwd
Die Ausgabe enthält für jedes Benutzerkonto eine eigene Zeile.

Jede Zeile hat folgende Struktur:
username:x:UID:GID:GECOS:home_directory:shell
Die einzelnen Felder haben folgende Bedeutung:
- username. Der Anmeldename des Kontos.
- x. Ein Platzhalter, der angibt, dass der Passwort-Hash in /etc/shadow gespeichert ist.
- UID. Die numerische Benutzer-ID.
- GID. Die numerische ID der primären Gruppe.
- GECOS. Optionale Angaben zum Benutzer, beispielsweise der vollständige Name oder eine Beschreibung.
- home_directory. Der absolute Pfad zum Home-Verzeichnis des Benutzers.
- shell. Das Programm, das ausgeführt wird, wenn sich der Benutzer anmeldet.
Auf Systemen mit Hunderten von Benutzern kann die Ausgabe von cat schnell unübersichtlich werden. Leiten Sie die Ausgabe in diesem Fall mit einer Pipe an less weiter, um sie leichter lesen zu können, oder verwenden Sie grep, um nach bestimmten Konten zu suchen.
cat /etc/passwd | less
cat /etc/passwd | grep username
Da /etc/passwd für alle Benutzer lesbar ist, sollten Sie beachten, dass die Datei Benutzer-IDs und Pfade zu Home-Verzeichnissen offenlegt. Die Passwörter selbst bleiben jedoch sicher verschlüsselt in /etc/shadow gespeichert. Auf diese Datei kann nur root zugreifen.
So listen Sie Linux-Benutzer mit dem Befehl getent auf
Der Befehl getent ruft Einträge über den Name Service Switch (NSS) des Systems ab. Er eignet sich daher besonders für Systeme, die netzwerkbasierte Benutzerverzeichnisse wie LDAP oder Active Directory verwenden.
Während cat nur die lokale Datei /etc/passwd liest, fragt getent alle in /etc/nsswitch.conf konfigurierten Benutzerdatenbanken ab.
Führen Sie folgenden Befehl aus, um alle Benutzer aus lokalen und Netzwerkquellen aufzulisten:
getent passwd
Wenn Sie die Angaben zu einem bestimmten Benutzer abrufen möchten, fügen Sie den Benutzernamen hinzu:
getent passwd username

Das Ausgabeformat entspricht dem von /etc/passwd. getent zeigt jedoch Benutzerdaten aus allen konfigurierten Quellen an, nicht nur aus lokalen Konten.
So listen Sie Benutzer mit compgen auf
compgen ist ein integrierter Bash-Befehl, der Treffer für die automatische Vervollständigung erzeugt. Mit der Option -u gibt der Befehl alle dem System bekannten Benutzernamen aus, darunter reguläre Benutzer- und Systemkonten.
Führen Sie folgenden Befehl aus, um alle Benutzernamen aufzulisten:
compgen -u
compgen fragt dieselben NSS-Datenbanken wie getent ab, gibt jedoch nur die Benutzernamen ohne weitere Felder aus. Daher eignet sich der Befehl besonders für Shell-Skripte oder zum Einrichten der automatischen Vervollständigung in benutzerdefinierten Tools.
Standardmäßig gibt compgen eine lange vertikale Liste aus. Leiten Sie die Ausgabe an den Befehl column weiter, um sie übersichtlicher darzustellen:
compgen -u | column

Da compgen ein integrierter Bash-Befehl ist, steht er in anderen Shells wie sh oder zsh nicht zur Verfügung.
So passen Sie die Benutzerausgabe mit awk und cut an
Wenn Sie nur Benutzernamen oder bestimmte andere Felder ohne zusätzliche IDs und Verzeichnispfade ausgeben möchten, verwenden Sie Textverarbeitungsprogramme wie awk oder cut.
Diese Tools dienen als Filter: Sie verarbeiten die Rohdaten aus /etc/passwd und geben nur die gewünschten Felder aus.
Die folgende Tabelle vergleicht beide Befehle beim Auflisten von Benutzern:
| Merkmal | awk | cut |
|---|---|---|
| Syntax | awk -F: ‘{print $1}’ /etc/passwd | cut -d: -f1 /etc/passwd |
| Trennzeichen | Mit -F: wird der Doppelpunkt als Trennzeichen festgelegt. | Mit -d: wird der Doppelpunkt als Trennzeichen festgelegt. |
| Feldlogik | Gibt mit $1 das erste Feld aus. | Wählt mit -f1 das erste Feld aus. |
| Am besten für | Komplexe Formatierungen und bedingte Verarbeitung | Einfache, ressourcenschonende Feldextraktion |
Verwenden Sie awk, wenn Sie die Daten weiterverarbeiten möchten, beispielsweise um Benutzer nach einem UID-Bereich zu filtern.

Verwenden Sie cut, wenn Sie schnell nur die Benutzernamen extrahieren möchten.
So überprüfen Sie, welche Benutzer aktuell angemeldet sind
Wenn Sie statt aller registrierten Konten die aktuell angemeldeten Linux-Benutzer anzeigen möchten, verwenden Sie die Befehle who oder users.
Mit Tools wie cat listen Sie alle Benutzerkonten auf, während who und users anzeigen, welche Benutzer gerade angemeldet sind. Dieser Unterschied ist besonders relevant, wenn Sie die Aktivitäten auf Servern mit mehreren Benutzern überwachen.
- users. Gibt eine einfache Zeile mit den Benutzernamen der aktuell angemeldeten Benutzer aus.
users

- who. Zeigt detaillierte Informationen an, darunter die Terminalzeile, die Anmeldezeit und die IP-Adresse, von der die Anmeldung erfolgte.
who

Für weitere Details, darunter die Leerlaufzeit und laufende Prozesse, verwenden Sie den Befehl w:
w

Welche Best Practices gibt es für das Auflisten von Benutzern?
Für eine effektive Überprüfung von Benutzern sollten Sie die Ausgabe für eine bessere Lesbarkeit filtern, Benutzerdaten schützen und regelmäßige Überprüfungen automatisieren, um die Systemintegrität zu gewährleisten.
Verknüpfen Sie Befehle mit Pipes
Kombinieren Sie Befehle zum Auflisten von Benutzern mit grep, um bestimmte Informationen schnell zu finden. Mit folgendem Befehl können Sie beispielsweise prüfen, ob ein bestimmter Benutzer vorhanden ist, ohne die gesamte Liste durchsuchen zu müssen:
getent passwd | grep username
Sie können die Liste außerdem alphabetisch sortieren, um die manuelle Überprüfung zu erleichtern:
cut -d: -f1 /etc/passwd | sort

Verwenden Sie eine grafische Benutzeroberfläche für die Benutzerverwaltung
Wenn Sie eine grafische Benutzeroberfläche der Befehlszeile vorziehen, verwenden Sie ein Control Panel wie Webmin oder die Benutzerverwaltung Ihrer Desktop-Umgebung.
Diese Tools bieten häufig eine durchsuchbare Benutzertabelle. So können Sie Gruppen, IDs und Shell-Berechtigungen auf einen Blick einsehen, ohne sich die Befehlssyntax merken zu müssen.
Verwalten Sie Benutzerinformationen sicher
Das regelmäßige Auflisten von Benutzern ist eine wichtige Sicherheitsmaßnahme. Achten Sie bei der Überprüfung der Liste auf Folgendes:
- Unbekannte Konten. Achten Sie auf Benutzerkonten, die Sie nicht erstellt haben.
- Unerwartete Konten mit UID 0. Nur root sollte die UID 0 haben. Jedes andere Konto mit UID 0 verfügt über vollständige Superuser-Rechte.
- Shell-Zugriff. Stellen Sie sicher, dass Systembenutzer wie www-data oder nobody /usr/sbin/nologin (Debian/Ubuntu), /sbin/nologin (RHEL/CentOS) oder /bin/false verwenden, um eine interaktive Anmeldung zu verhindern.
So automatisieren Sie das Auflisten von Benutzern mit Bash-Skripten
Um das Auflisten von Benutzern zu automatisieren, erstellen Sie Bash-Skripte, die Befehle wie cut oder awk ausführen, und planen Sie deren Ausführung mit cron.
Befehle wie cat, getent, awk, cut, who und compgen eignen sich gut für schnelle Überprüfungen. Auf großen Linux-Systemen werden wiederholte manuelle Abfragen jedoch schnell ineffizient.
Mit Bash-Skripten können Sie Benutzerinformationen automatisch abrufen, Konten nach bestimmten Kriterien filtern, beispielsweise nach Benutzern mit sudo-Zugriff, und Berichte für eine spätere Überprüfung speichern. So können Sie bei der langfristigen Serververwaltung konsistente und sichere Überprüfungen durchführen.
Anschließend können Sie die Skripte mit Cron-Jobs automatisch ausführen lassen, um verdächtige Kontoänderungen zu erkennen. Ein einfaches Skript kann alle Benutzer in eine mit einem Zeitstempel versehene Textdatei exportieren, sodass Sie die Ergebnisse im Laufe der Zeit vergleichen können.
Das folgende Beispielskript exportiert eine mit cut erstellte Benutzerliste in eine Datei mit Zeitstempel:
#!/bin/bash # Export user list to a timestamped file OUTPUT_DIR="$HOME/user_audits" OUTPUT_FILE="$OUTPUT_DIR/user_audit_$(date +%F).txt" # Create output directory if it doesn't exist mkdir -p "$OUTPUT_DIR" # Generate user list cut -d: -f1 /etc/passwd | sort > "$OUTPUT_FILE" echo "User audit saved to $OUTPUT_FILE"
Machen Sie das Skript ausführbar und planen Sie mit cron eine tägliche oder wöchentliche Ausführung:
chmod +x ~/user_audit.sh crontab -e # Add: 0 2 * * * ~/user_audit.sh
Wenn Sie Skripte nicht von Grund auf selbst erstellen möchten, können Sie Hostinger Agent, unseren KI-Assistenten, verwenden. Er ist in allen VPS-Tarifen verfügbar und erstellt sofort Automatisierungsskripte für Sie. Geben Sie einfach eine Eingabe ein, die beschreibt, was das Skript tun soll.
Wenn Sie mehr praxisorientiert lernen möchten, können Sie mit weiteren Bash-Skripten experimentieren und so fortgeschrittene Automatisierungsaufgaben Schritt für Schritt umsetzen.

Alle Tutorial-Inhalte auf dieser Website unterliegen Hostingers strengen redaktionellen Standards und Normen.
Comments
0 responses