Linux-Benutzer über das Terminal anzeigen
Die Linux-Befehlszeile (Terminal) bietet dir eine Vielzahl von Möglichkeiten, Informationen über Benutzer auf deinem System abzurufen. Hier ist eine Schritt-für-Schritt-Anleitung, um Linux-Benutzer über das Terminal anzuzeigen:
Alle Benutzer auflisten mit ‚ls‘
Der Befehl ls
kann nicht nur Dateien und Verzeichnisse auflisten, sondern auch Benutzer auf deinem System. Um alle Benutzer aufzulisten, gib einfach Folgendes ein:
ls /home
Dies listet alle Benutzerkonten auf, die auf deinem System erstellt wurden.
Ausführliche Informationen mit ‚w‘ anzeigen
Der Befehl w
zeigt dir eine Liste der angemeldeten Benutzer an, zusammen mit Informationen wie ihrer Login-Zeit, Hostname und aktuellem Befehl. Um ausführliche Informationen über angemeldete Benutzer anzuzeigen, gib Folgendes ein:
w
Angemeldete Benutzer mit ‚who‘ auflisten
Der Befehl who
listet die angemeldeten Benutzer auf, jedoch ohne die ausführlichen Informationen, die mit dem Befehl w
bereitgestellt werden. Um eine einfachere Liste der angemeldeten Benutzer anzuzeigen, gib Folgendes ein:
who
Alle Benutzer auflisten mit ‚ls‘
Grundlagen
Der Befehl ls
ist ein vielseitiges Tool zum Auflisten von Dateien und Verzeichnissen. Er kann jedoch auch verwendet werden, um alle Benutzer auf deinem Linux-System aufzulisten.
Syntax
ls /home
Diese einfache Syntax listet alle Verzeichnisse im Home-Verzeichnis auf, die Benutzerrepräsentationen sind.
Ergebnisse interpretieren
Jeder Eintrag, der mit einem Verzeichnis endet, stellt einen Benutzer dar. Die Namen dieser Verzeichnisse stimmen mit den Benutzernamen überein.
Praktisches Beispiel
Führe den folgenden Befehl im Terminal aus, um alle Benutzer aufzulisten:
ls /home
Du solltest eine Ausgabe ähnlich der folgenden sehen:
alice
bob
charlie
Diese Ausgabe zeigt, dass es drei Benutzer auf dem System gibt: alice
, bob
und charlie
.
Hinweise
-
Der Befehl
ls
listet nur Benutzer auf, die ein Home-Verzeichnis im Standardpfad/home
haben. -
Wenn du Benutzer auflisten möchtest, die ihre Home-Verzeichnisse an einem anderen Ort haben, musst du den Pfad zu ihren Home-Verzeichnissen angeben.
-
Der Befehl
ls -l /home
liefert ausführlichere Informationen zu jedem Benutzerverzeichnis, einschließlich der Berechtigungen und des Besitzers.
Ausführliche Informationen mit ‚w‘ anzeigen
Der Befehl w
bietet dir eine ausführliche Auflistung der aktuell angemeldeten Benutzer zusammen mit zusätzlichen Informationen.
Detaillierte Benutzerinformationen
Mit w
kannst du die folgenden Details zu jedem angemeldeten Benutzer anzeigen:
- Benutzername: Der Name des angemeldeten Benutzers.
- TTY: Das Terminal, an dem der Benutzer angemeldet ist (z. B. tty1, tty2).
- Login-Zeit: Die Uhrzeit, zu der sich der Benutzer angemeldet hat.
- Leerlaufzeit: Die Zeit, seit der der Benutzer keine Befehle mehr eingegeben hat (sowohl das Terminal als auch X-Sitzungen werden gezählt).
- Prozess-ID (PID): Die Prozess-ID für jeden vom Benutzer ausgeführten Prozess.
- Kommando: Der Befehl, den der Benutzer derzeit ausführt.
Verwendung von ‚w‘
Um grundlegende Informationen über angemeldete Benutzer anzuzeigen, gib einfach w
ein:
$ w
Anzeige erweiterter Informationen
Du kannst zusätzliche Informationen anzeigen, indem du Optionen an w
übergibst:
-
-h
: Alle angemeldeten Benutzer mit ausführlichen Informationen auflisten. -
-s
: Eine Zusammenfassung der Benutzeraktivität auf dem System anzeigen. -
-f
: Ausführliche Informationen zu jedem angemeldeten Benutzer anzeigen, einschließlich der Liste der ausgeführten Prozesse.
Beispiel:
Um eine Zusammenfassung der Benutzeraktivität anzuzeigen, gib Folgendes ein:
$ w -s
Beispiel:
Um ausführliche Informationen zu jedem angemeldeten Benutzer anzuzeigen, gib Folgendes ein:
$ w -f
Probleme mit ‚w‘
In manchen Fällen kann w
unvollständige oder ungenaue Informationen anzeigen, wenn Benutzer vom System abgemeldet wurden, während w
ausgeführt wurde. Dies kann passieren, wenn Benutzer über SSH oder andere Remote-Dienste angemeldet sind.
Angemeldete Benutzer mit who
auflisten
Der Befehl who
ist ein vielseitiges Werkzeug, um Informationen über angemeldete Benutzer, ihre Prozesse und ihre Anmeldezeiten anzuzeigen. Im Gegensatz zu w
liefert who
eine vereinfachte Ausgabe, die sich auf die wichtigsten Informationen konzentriert.
Syntax
who [Optionen]
Optionen
- -a: Fügt zu jeder Zeile die Terminalsitzung des angemeldeten Benutzers hinzu.
- -b: Zeigt nur die Startroutine (Boot-Prozess) des Systems an.
- -d: Zeigt nur Benutzer an, die sich über das Netzwerk angemeldet haben.
- -l: Zeigt den Namen des Hosts an, von dem sich der Benutzer angemeldet hat.
- -m: Zeigt die tatsächliche Minute der letzten Aktivität des Benutzers an.
- -p: Zeigt den Prozess-ID (PID) des Login-Prozesses des Benutzers an.
- -s: Zeigt die Startzeit des Benutzers in absoluter Zeit an.
- -t: Zeigt die Uhrzeit der letzten Aktivität des Benutzers an.
- -u: Fügt der Ausgabe Informationen über die zuletzt ausgeführten Befehle hinzu.
- -v: Ausführliche Ausgabe.
Verwendung
Gib den Befehl who
ohne Argumente ein, um eine Liste aller angemeldeten Benutzer anzuzeigen:
who
Ausgabebeispiel
Die Ausgabe enthält typischerweise die folgenden Spalten:
- Benutzername: Name des angemeldeten Benutzers.
- Terminal: Name des Terminals, an dem sich der Benutzer angemeldet hat.
- Datum und Uhrzeit: Datum und Uhrzeit der Anmeldung.
- Uhrzeit: Aktuelle Uhrzeit.
[dein_benutzername] tty1 2023-03-08 10:25 ((pts/0))
[anderer_benutzername] tty2 2023-03-08 11:30 ((pts/1))
Fortgeschrittene Verwendung
Du kannst die Ausgabe von who
mit Optionen anpassen, um spezifischere Informationen zu erhalten. Beispielsweise kannst du -l
verwenden, um den Hostnamen anzuzeigen, von dem sich ein Benutzer angemeldet hat:
who -l
Oder du kannst -u
verwenden, um Informationen zu den zuletzt ausgeführten Befehlen hinzuzufügen:
who -u
who
ist ein leistungsstarkes Werkzeug, mit dem du den Überblick über die auf deinem Linux-System angemeldeten Benutzer behalten kannst.
Nicht angemeldete Benutzer mit ‚last‘ anzeigen
Wenn du eine Liste aller Benutzer benötigst, die sich in der Vergangenheit bei deinem System angemeldet haben, aber derzeit nicht angemeldet sind, kannst du den Befehl last
verwenden.
Syntax
last [Optionen]
Optionen
-
-f
: Gibt die vollständige Dateiname der Befehlszeile an. -
-n
: Gibt eine angegebene Anzahl von Einträgen an. -
-t
: Filtert nach Anmelde- oder Abmeldezeit.
Beispiel
Um eine Liste der letzten 10 Benutzer anzuzeigen, die sich bei deinem System angemeldet haben, aber derzeit nicht angemeldet sind, gibst du Folgendes ein:
last -n 10
Die Ausgabe sieht in etwa so aus:
username1 tty7 Thu Jan 19 09:23 - 10:40 (01:17)
username2 pts/0 Wed Jan 18 14:12 - 16:31 (02:19)
username3 pts/1 Tue Jan 17 09:00 - 10:05 (01:05)
In diesem Beispiel zeigt jede Zeile den Benutzernamen, das Terminal, von dem aus sich der Benutzer angemeldet hat, das Datum und die Uhrzeit der Anmeldung und Abmeldung sowie die Dauer der Sitzung an.
Filterung der Ausgabe
Du kannst die Ausgabe des Befehls last
filtern, indem du die folgenden Optionen verwendest:
-
-t
: Filtert nach Anmelde- oder Abmeldezeit. Zum Beispiel:
last -t 09:00 - 12:00
Dieser Befehl würde alle Benutzer auflisten, die sich zwischen 9:00 und 12:00 Uhr angemeldet haben.
-
-f
: Filtert nach vollständigem Dateinamen der Befehlszeile. Zum Beispiel:
last -f /usr/bin/bash
Dieser Befehl würde alle Benutzer auflisten, die sich mit der Bash-Shell angemeldet haben.
Inaktive Benutzer mit ‚lastlog‘ identifizieren
Der Befehl lastlog
ermöglicht es dir, die zuletzt erfolgten Anmeldungen von Benutzern anzuzeigen. Diese Informationen können hilfreich sein, um inaktive Benutzer zu identifizieren.
Syntax
lastlog [-a] [-b boottime] [-d days] [-f file] [-g group] [-h host] [-i timespec] [-l login] [-n num] [-o option] [-p pathname] [-R] [-T timespec] [-u user] [-w]
Optionen
Die wichtigsten Optionen für lastlog
sind:
-
-a
: Zeigt alle Benutzer mit ihren letzten Anmeldungen an. -
-b
: Gibt die Boot-Zeit an, ab der die Anmeldungen angezeigt werden sollen. -
-d
: Zeigt nur Anmeldungen an, die innerhalb der angegebenen Anzahl von Tagen erfolgt sind. -
-u
: Zeigt nur Anmeldungen des angegebenen Benutzers an.
Beispiel
Um alle Benutzer anzuzeigen, die sich in den letzten 30 Tagen nicht angemeldet haben, führe folgenden Befehl aus:
lastlog -d 30
Interpretation der Ausgabe
Die Ausgabe von lastlog
ist in folgende Spalten unterteilt:
-
User
: Der Benutzername. -
Port
: Der Port, über den sich der Benutzer angemeldet hat. -
From
: Die IP-Adresse oder der Hostname, von dem sich der Benutzer angemeldet hat. -
Last Login
: Das Datum und die Uhrzeit der letzten Anmeldung.
Wenn ein Benutzer in der Ausgabe nicht aufgeführt ist, hat er sich noch nie auf dem System angemeldet oder war in den letzten 30 Tagen nicht aktiv.
Anwendungsfälle
Das Identifizieren inaktiver Benutzer kann hilfreich sein, um:
- Sicherheitsprobleme zu beheben.
- Ungenutzte Benutzerkonten zu entfernen.
- Den Ressourcenverbrauch zu optimieren.
Benutzer suchen mit ‚finger‘
‚finger‘ ist ein praktisches Dienstprogramm, mit dem du Informationen über einen bestimmten Benutzer abfragen kannst. Um ‚finger‘ zu verwenden, öffne dein Terminal und gib den Befehl gefolgt vom Benutzernamen ein, den du suchen möchtest.
Benutzerinformationen anzeigen
Der Befehl ‚finger‘ liefert eine Vielzahl von Informationen über den angegebenen Benutzer, darunter:
- Vollständiger Name
- E-Mail-Adresse
- Büronummer
- Telefonnummer
- GPG-Schlüssel-Fingerabdruck
- Aktueller Status (z. B. "Weg", "Inaktiv")
Benutzerstatus abrufen
Der ‚finger‘-Befehl kann auch den aktuellen Status des Benutzers anzeigen, wie "Weg" oder "Inaktiv". Wenn du den Status eines Benutzers sehen möchtest, gib den Befehl ‚finger‘ gefolgt vom Benutzernamen und der Option ‚-s‘ ein.
finger -s username
Detailliertere Informationen anzeigen
Für detailliertere Informationen über einen Benutzer kannst du die Option ‚-l‘ verwenden. Dadurch wird eine umfangreichere Ausgabe angezeigt, die zusätzliche Felder wie die Heimatverzeichnis, Shell und die zuletzt geänderte Zeit der Benutzerinformationen enthält.
finger -l username
Weitere Optionen
‚finger‘ bietet weitere Optionen, mit denen du die angezeigten Informationen anpassen kannst. Hier sind einige nützliche Optionen:
-
-a
: Zeige alle Benutzer an -
-i
: Zeige die IP-Adresse des Benutzers an -
-m
: Zeige die Mailbox des Benutzers an -
-p
: Zeige die Prozessliste des Benutzers an