Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Mit dem Befehl who ist es möglich, eine Vielzahl an Informationen über sowohl lokal als auch remote angemeldete Benutzer zu erhalten. Der Befehl gibt dabei aus:
welcher Benutzer auf dem System angemeldet ist
worüber der Benutzer angemeldet ist
wann er sich angemeldet hat
die IP Adresse eines remote Benutzers
den Hostnamen eines remote Benutzers
ob ein remote Benutzer über mesg zu erreichen ist
tote Prozesse
laufende Prozesse
Anzahl der Benutzer
wann die Systemuhr zuletzt gestellt wurde
den aktuellen Runlevel
vergangene Anmeldungen
fehlgeschlagene Anmeldungen
eine Hilfe
die Versionsnummer
Das Programm who ist im essentiellen Paket
coreutils
von Ubuntu enthalten und ist deshalb auf jedem System installiert.
Die Syntax von who ist recht einfach [1]
who <Option(en)> [Dateiname]
Sowohl die Option(en) als auch der Dateiname sind dabei optional.
who kennt folgende Optionen:
Optionen von who | |
Option | Beschreibung |
-a oder --all | Alle Optionen |
-b oder --boot | Zeitpunkt des letzten Systemstarts |
-d oder --dead | Inaktive Prozesse ausgeben |
--help | Hilfe zum Befehl wird ausgegeben. |
-H oder --heading | Beschriftet die Spalten der Ausgabe. |
--ips | Gibt die IP Adressen der remote Benutzer aus. |
-l oder --login | Gibt den Hostnamen zurück, über den sich ein remote Benutzer angemeldet hat. |
--lookup | Rechnernamen der remote User werden ausgegeben. |
-m | Gibt Informationen über den Benutzer aus, der am Terminal angemeldet ist. |
-p oder --process | Aktive Prozesse anzeigen |
-q oder --count | Gibt die angemeldeten Benutzer durchnummeriert aus. |
-r oder --runlevel | Der aktuelle Runlevel wird ausgegeben. |
-s oder --short | Name, Leitung und Zeit werden ausgegeben. |
-t oder --time | Zeitpunkt des letztmaligen Stellens der Systemuhr wird ausgegeben. |
-T oder --mesg | Gibt aus, ob man den angemeldeten Benutzer über mesg kontaktieren kann. |
--message | Beschriftet die Spalten der Ausgabe. |
--writable | Beschriftet die Spalten der Ausgabe. |
-u oder --users | Gibt die Zeit aus, die ein Benutzer am Terminal inaktiv war. |
--version | Versionsinformationen |
Im Folgenden einige Dateien inklusive voller Pfadangabe, die in Kombination mit who interessante Informationen liefern können:
Datei | Beschreibung |
/var/run/utmp | Angaben über aktuell angemeldete Benutzer (Default) |
/var/log/wtmp | Angaben über vergangene Anmeldungen |
/var/log/btmp | Angaben über missglückte Anmeldungen |
Der Befehl
$ who --all -H
kann z.B. folgende Ausgabe erzeugen:
NAME LEITUNG ZEIT PID KOMMENTAR EXIT system boot 2007-05-23 15:58 Runlevel 2 2007-05-23 15:58 last= LOGIN tty4 2007-05-23 15:58 4570 id=4 LOGIN tty5 2007-05-23 15:58 4571 id=5 LOGIN tty2 2007-05-23 15:58 4576 id=2 LOGIN tty3 2007-05-23 15:58 4577 id=3 LOGIN tty1 2007-05-23 15:58 4578 id=1 LOGIN tty6 2007-05-23 15:58 4579 id=6 user ? :0 2007-05-23 15:59 ? 5749 user + pts/0 2007-05-23 16:40 . 7954 (:0.0)
Zeile 1: In diesem Falle erfolgte das Starten des Systems am 23.05.2007 um 15:58.
Zeile 2: Hier wird dokumentiert, dass das System am 23.05.2007 um 15:58 in den Runlevel 2 wechselte.
Zeile 3 - 8: Aus diesen Zeilen kann man ersehen, dass die Terminals 4 - 6 am 23.05.2007 um 15:58 gestartet wurden.
Zeile 9: Hier wird angegeben, dass der X-Server am 23.05.2007 um 15:59 gestartet ist.
Zeile 10: Eine Pseudokonsole wurde am 23.05.2007 um 16:40 gestartet.
"tty" sind dabei "echte" Konsolen, "pts" eine Pseudokonsole unter einer X-Sitzung und ":0" eine X-Server-Sitzung
Diese Revision wurde am 12. Januar 2013 18:38 von aasche erstellt.