Einführung
Linux-Systemadministratoren benötigen häufig Zugriff auf Informationen über aktuell angemeldete Benutzer. Das Paket GNU coreutils enthält das who
Befehl, der die erforderlichen Optionen bereitstellt.
In diesem Tutorial lernen Sie, wie Sie who
verwenden Befehl, um eine Liste der angemeldeten Benutzer anzuzeigen, Informationen zur Startzeit, Prozesse und mehr anzuzeigen.
Voraussetzungen
- Ein System, auf dem Linux ausgeführt wird
- Zugriff auf die Befehlszeile
Linux Who-Befehlssyntax
Die Syntax für who
Befehl ist:
who [options] [filename]
Wenn Sie nach dem Befehl und den Optionen keine Datei angeben, wird who
sucht nach den Benutzerinformationen in /var/run/utmp
. Diese Datei ist der Standardspeicherort zum Speichern von Daten zu Benutzeranmeldungen in Linux.
who Command Beispiele
Die folgenden Abschnitte listen die who
auf Befehlsoptionen, zusammen mit einigen Beispielen.
Kontoinformationen anzeigen
Wenn Sie who
verwenden ohne Optionen zeigt es eine Liste der angemeldeten Benutzernamen an.
who
Den gleichen Effekt erzielen Sie mit dem -s
(--short
) Option:
who -s
Drucken Sie die Spaltenüberschriften
Verwenden Sie das -H
(--heading
) Option, um Spaltennamen über der Benutzerliste anzuzeigen:
who -H
Nur den Hostnamen und den mit stdin verknüpften Benutzer anzeigen
Um nur die Informationen über den aktuellen Benutzer anzuzeigen, verwenden Sie -m
kennzeichnen oder zwei beliebige Argumente zu who
hinzufügen Befehl.
who am I
ist ein beliebtes Beispiel, aber zwei beliebige Wörter führen zum gleichen Ergebnis.
who -m
Verfügbare Terminals anzeigen
Verwenden Sie für eine Liste der verfügbaren Terminals -l
(--login
) Option:
who -l
Zeit des letzten Systemstarts anzeigen
Der who
Der Befehl zeigt die letzte Systemstartzeit, wenn er mit -b
verwendet wird (--boot
) Option:
who -b
Alle Anmeldenamen und Anzahl der angemeldeten Benutzer anzeigen
Um die Benutzernamen und die Anzahl der derzeit beim System angemeldeten Benutzer aufzulisten, fügen Sie -q
hinzu (--count
) Option:
who -q
Nachrichtenstatus des Benutzers hinzufügen
Zeigen Sie den Nachrichtenstatus des Benutzers mit dem -T
an Option zum Überprüfen der Berechtigungen zum Schreiben von Nachrichten an Ihr Terminal. Verwenden Sie alternativ -w
oder --mesg
um dasselbe Ergebnis zu erzielen:
who -T
Mögliche Nachrichtenstatus sind:
+
– Der Benutzer hat Schreibberechtigungen für das Terminal.-
– Der Benutzer hat keine Schreibberechtigung für das Terminal.?
– Endgerät nicht gefunden.
Aktive Prozesse drucken, die von Init erzeugt wurden
Verwenden Sie who
um eine Liste aktiver Prozesse anzuzeigen, die von init, dem Daemon, der während des Boot-Vorgangs gestartet wird, erzeugt werden.
Fügen Sie dazu den -p
hinzu (--process
) Option:
who -p
Tote Prozesse drucken
Verwenden Sie für eine Liste toter Prozesse -d
(--dead
) Option:
who -d
Wenn es tote Prozesse gibt, gibt das Terminal eine Ausgabe ähnlich der folgenden aus:
[email protected]:~$ who -d
pts/3 2021-01-13 20:22 37405 id=ts/3 term=0 exit=0
pts/4 2021-01-17 10:55 67165 id=ts/4 term=0 exit=04
Aktuellen Runlevel anzeigen
Um den aktuellen Runlevel des Systems auszudrucken, verwenden Sie who
mit -r
(--runlevel
)
who -r
Letzte Änderung der Systemuhr anzeigen
Das -t
(--time
)-Option druckt, wann die Systemuhr das letzte Mal geändert wurde:
who -t
Leerlaufzeit anzeigen
Das -u
Option (--users
) zeigt, wie lange jeder Benutzer untätig war:
who -u
Zwingen Sie, wer alle Informationen ausdruckt
Verwenden Sie das who
Befehl mit dem -a
(--all
) Option zum Drucken einer Ausgabe, die die von -b
bereitgestellten Informationen enthält , -d
, -l
, -p
, -r
, -t
, -T
und -u
Optionen:
who -a
Das -a
Das Flag ist praktisch, wenn Sie keine separaten Optionen verwenden möchten, um verschiedene Daten zu drucken.