Ich verwende ein Linux-Betriebssystem, das von Grund auf neu erstellt wurde. Ich möchte den Kernel-Nachrichtenpuffer (dmesg) in einer Datei speichern, die zwischen Neustarts bestehen bleibt.
Ich habe versucht, syslogd auszuführen, aber es hat gerade eine neue Protokolldatei / var / log / messages geöffnet, die weder den vorhandenen Kernel-Nachrichtenpuffer noch neue Nachrichten enthält, die der Kernel nach dem Start von syslogd generiert hat.
Wie kann der Kernel-Nachrichtenpuffer in einer dauerhaften Protokolldatei gespeichert werden?
Antworten:
Sie müssen sich entweder
/etc/rsyslog.conf
oder ansehen/etc/syslog.conf
. Wenn Sie frühzeitig eine Leitung haben, wie zum Beispiel:Alles, einschließlich des Materials von dmesg, sollte in diese Datei gehen. Um es besser anzuvisieren:
Wenn dies aus irgendeinem Grund fehlschlägt, können Sie in regelmäßigen Abständen (z. B. über cron):
Je nachdem, wie groß der dmesg-Puffer ist (dieser wird in den Kernel kompiliert oder über den
log_buf_len
Parameter festgelegt) und wie lange Ihr System bereits aktiv ist, wird das Kernel-Protokoll seit dem Start aufgezeichnet .Wenn Sie die dmesg-Ausgabe kontinuierlich in eine Datei schreiben möchten, verwenden Sie das Flag -w (--follow).
quelle
Wenn Sie verwenden
systemd
, können Sie alle Informationen aus demsystemd
Journal mithilfe von abrufenjournalctl -k
.syslog
undrsyslog
sind nicht erforderlich, wenn Sie systemd verwenden.quelle
PopSicle verwendet dazu die alte msdos-Weiterleitung und wird in eine .csv-Datei umgeleitet, die von LibreOffice Calc im Terminal in einer Tabellenkalkulation geöffnet wird
quelle