who
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
 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:
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 
Installation¶
Das Programm who ist im essentiellen Paket
- coreutils 
von Ubuntu enthalten und ist deshalb auf jedem System installiert.
Benutzung¶
Die Syntax von who ist recht einfach [1]
who <Option(en)> [Dateiname]
Sowohl die Option(en) als auch der Dateiname sind dabei optional.
Optionen¶
who kennt folgende Optionen:
| Option | Beschreibung | 
| -aoder--all | Alle Optionen | 
| -boder--boot | Zeitpunkt des letzten Systemstarts | 
| -doder--dead | Inaktive Prozesse ausgeben | 
| -Hoder--heading | Beschriftet die Spalten der Ausgabe. | 
| --ips | Die IPs statt der Rechnernamen ausgeben. | 
| -loder--login | Loginprozesse des Systems ausgeben. | 
| --lookup | Rechnernamen der remote User werden ausgegeben. | 
| -m | Gibt Informationen über den Benutzer aus, der am Terminal angemeldet ist. | 
| -poder--process | Aktive Prozesse anzeigen | 
| -qoder--count | Gibt die angemeldeten Benutzer durchnummeriert aus. | 
| -roder--runlevel | Der aktuelle Runlevel wird ausgegeben. | 
| -soder--short | Name, Leitung und Zeit werden ausgegeben. | 
| -toder--time | Zeitpunkt der letzten Änderung der Systemuhr wird ausgegeben. | 
| -T,-w | Gibt aus, ob man den angemeldeten Benutzer über mesg kontaktieren kann. | 
| --writeableoder--message | Dasselbe wie -T | 
| -uoder--users | Alle angemeldeten User auflisten. | 
| --help | Hilfe zum Befehl wird ausgegeben. | 
| --version | Versionsinformationen | 
Dateien¶
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 | 
Beispiel¶
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 
- ":0" eine X-Server-Sitzung 
Links¶
- Shell/Befehlsübersicht Übersicht über verschiedene Shell-Befehle