4 Linux-Befehle für mehr Server-Einblick

22.04.2024
Von 


Sandra Henry-Stocker besitzt mehr als 30 Jahre Expertise als Linux-Systemadmin und schreibt für unsere US-Schwesterpublikation Network World.
Diese Linux-Befehle verschaffen Ihnen detaillierte Insights darüber, wer wann, wie lange und wie oft auf Ihren Servern aktiv ist.
Wissen Sie genau, wer sich wann auf Ihren Linux-Servern herumtreibt?
Wissen Sie genau, wer sich wann auf Ihren Linux-Servern herumtreibt?
Foto: Mike Korostelev | shutterstock.com

Wenn Sie Linux-Server managen, sollten Sie darüber Bescheid Wissen, wie stark diese frequentiert werden und welche Benutzer sie am stärksten beanspruchen. Schließlich erfordern stark ausgelastete Server möglicherweise ein umfassenderes Monitoring - und zusätzliche Kommunikation mit den Benutzern.

Die Logins werden bei Linux in einer Protokolldatei festgehalten. Diese Daten zu extrahieren, ist überraschend einfach - die richtigen Befehle vorausgesetzt. Wenn Sie also ein Reporting darüber erstellen müssen, wer sich wann, wie oft und wie lange auf Ihren Linux-Servern anmeldet, könnten die folgenden vier Kommandos unter Umständen Ihre Rettung sein.

4 essenzielle Linux-Server-Befehle

Um an die Daten aus den Logfiles zu gelangen, brauchen Sie keine Root-Rechte: Sie sind in der wtmp-Datei abgelegt, für die allgemeine Leserechte bestehen. Schreibrechte stehen allerdings ausschließlich privilegierten Benutzern oder Administratoren zu. Im Folgenden ein Beispiel, um um die Dateiberechtigungen anzuzeigen:

$ ls -l /var/log/wtmp

-rw-rw-r--. 1 root utmp 3768 Apr 2 16:25 /var/log/wtmp

who

Um zu überprüfen, was die Datei enthält, verwenden Sie den Befehl who (beispielsweise: who /var/log/wtmp). Bei stark frequentierten Servern kann das allerdings schnell Hunderte von Output-Zeilen generieren. Hier eine Handvoll, die angezeigt werden, wenn der who-Befehl an head übergeben wird:

$ who /var/log/wtmp | head 11

alex tty3 2024-04-01 08.11 (192.168.0.8)

shs pts/3 2024-04-01 10:24 (192.168.0.11)

shs pts/3 2024-04-02 08:24 (192.168.0.11)

alex tty3 2024-04-02 08.11 (192.168.0.8)

shs pts/3 2024-04-03 09:05 (192.168.0.11)

shs pts/3 2024-04-04 07:15 (192.168.0.11)

alex tty3 2024-04-04 08.11 (192.168.0.8)

shs pts/3 2024-04-05 10:11 (192.168.0.11)

fedora seat0 2024-04-05 11:02 (login screen)

fedora tty2 2024-04-05 11:02 (tty2)

shs pts/3 2024-04-05 16:24 (192.168.0.11)

Die Anzahl der Einträge können Sie zählen, indem Sie den Output des who-Befehls an wc -l übergeben (beispielsweise: who /var/log/wtmp | wc -l). Das liefert nützlichere Informationen darüber, welche Benutzer sich wie häufig anmelden.

$ who /var/log/wtmp | sort | awk '{print $1}' | uniq -c

23 alex

12 fedora

96 shs

Das obige Beispiel sortiert die Zeilen in der Datei, beschränkt den Output auf das erste Feld (den Benutzernamen) und zählt dann die Zeilen für jeden einzelnen Benutzer. Sie können zudem relativ einfach einen Alias erstellen, der Zählungen wie diese liefert:

$ alias showLogins="who /var/log/wtmp | sort | awk '{print $1}' | uniq -c"

Das zeigt zwar nicht an, wie lange jeder einzelne User angemeldet war, vermittelt aber ein Bild darüber, wie stark das System genutzt wird.

last

Um zu sehen, wie lange die aktuell angemeldeten Benutzer bereits eingeloggt sind, nutzen Sie den Befehl last:

$ last shs

shs pts/3 192.168.0.11 Tue Apr 5 08:24 still logged in

w

Das Linux-Kommando w zeigt Ihnen an, wann sich die User angemeldet haben und wie lange sie inaktiv waren:

$ w

17:03:53 up 6:02, 3 users, load average: 0.24, 0.23, 0.20

USER TTY LOGIN@ IDLE JCPU PCPU WHAT

fedora seat0 11:02 0.00s 0.00s 0.00s /usr/libexec/gdm-wayland-session /usr/bin/gnome-session

fedora tty2 11:02 6:02m 0.06s 0.06s /usr/libexec/gnome-session-binary

shs pts/3 16:24 0.00s 0.13s 0.02s w

Die in der ersten Zeile angezeigten "Load Average"-Werte stellen Messungen der vom System durchgeführten Rechenoperationen dar. Idealerweise sollten all diese Werte kleiner sein als die Anzahl der im System vorhandenen CPUs. Höhere Werte deuten hingegen auf Probleme oder überlastete Maschinen hin.

ac-p

Der Linux-Befehl ac -p gibt Ihnen schließlich Auskunft darüber, wie lange die Benutzer - in Stunden - bereits angemeldet sind.

$ ac -p

lola 5.43

shs 9.88

total 15.31

(fm)

Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation Network World.