(Rotierender) Anmeldebildschirm ansehen

(Rotierender) Anmeldebildschirm ansehen

Ich betreibe einen Mailserver, mit dem ich mich per SSH verbinde. Mein Server .bash_profileist so konfiguriert, dass eine SSH-Sitzung an eine bestimmte screenSitzung angehängt wird.

Nun möchte ich ein Protokoll (z. B. das Syslog) in einem Fenster dieser Bildschirmsitzung ausdrucken. Ich habe versucht,

tail -f /var/log/syslog

aber die Ausgabe stoppt jeden Tag um 6:25. Ich nehme an, das ist die Zeit, zu der das Protokoll rotiert wird. Gibt es also eine Möglichkeit, das Protokoll auf dem Bildschirm auszudrucken?

Antwort1

Du brauchsttail --follow=name /var/log/syslog

Der Grund dafür ist, dass standardmäßig – angeblich aus Leistungsgründen – tail die angegebene Datei geöffnet wird und dann beobachtet wirdder Dateideskriptores erhält aus diesem open(2)Aufruf für Änderungen. Dies funktioniert einwandfrei, solange die Datei geändert wird – angehängt oder sogar neu geschrieben wird (indem sie zuerst gekürzt wird), aber es funktioniert nicht mehr, wenn die Dateiersetzt– das heißt, entfernt und mit demselben Namen erstellt, und das ist das, was logrotatenormalerweise passiert.

Der "Name"-Modus von --followmakes tailverwendet einen aufwändigeren stat(2)Systemaufruf, der den Dateinamen jedes Mal über die Dateisystemebene "auflöst" und wenn tailbemerkt wird, dass die Datei ihren sogenannten"Inode", tailöffnet die Datei erneut.

Die Ausgabe von man tail:

-f, --follow[={name|descriptor}]

gibt angehängte Daten aus, wenn die Datei wächst; ein fehlendes Optionsargument bedeutet „Deskriptor“

-FSie können sich auch die Befehlszeilenoption ansehen , die wie folgt definiert ist:

-Fgleich wie--follow=name --retry

Antwort2

Ihre Vermutung ist tatsächlich richtig. Zu diesem Zeitpunkt unterbricht das Syslog das Schreiben in das Protokoll, macht ein GZ daraus und startet das Protokollieren erneut.

Sie könnten es mit versuchen

tail -f --retry /var/log/syslog

Auf diese Weise sollte tail erneut versuchen, die Datei zu öffnen, wenn die Protokollrotation abgeschlossen ist.

verwandte Informationen