Zum Inhalt springen

Systemd/Journald/Konfiguration

Aus Foxwiki

Systemd/Journald/Konfiguration - Beschreibung

Beschreibung

Möchte man die Einstellung von journald ändern, muss die Datei /etc/systemd/journald.conf mit einem Editor und Root-Rechten bearbeitet werden

In der Datei sind alle Default-Konfigurationswerte von journald in Form von auskommentierten Einträgen hinterlegt

  • Zum Ändern eines Konfigurationspunkts ändert man einfach den entsprechenden Wert und entfernt das Kommentarzeichen # am Zeilenanfang
  • Nach einem Neustart des Rechners läuft journald mit der geänderten Konfiguration

Eine komplette Übersicht inklusive Erklärung zu den Konfigurationsmöglichkeiten findet man in der Dokumentation oder in der Manpage namens journald.conf

Konfiguration

Das Verhalten des systemd-journald-Service lässt sich in /etc/systemd/journald.conf festlegen

  • In diesem Abschnitt werden lediglich die grundlegenden Optionseinstellungen vorgestellt
  • Eine vollständige Beschreibung der Datei finden Sie auf der man-Seite man 5 journald.conf
  • Damit die Änderungen in Kraft treten, müssen Sie das Journal wie folgt neu starten
systemctl restart systemd-journald

Installation

Aufruf

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Problembehebung

Konfiguration

Dateien

Datei Beschreibung


Anhang

Siehe auch



Dokumentation

Man-Page
  1. prep(1)


Links

Projekt

Weblinks


TMP

Speichereinstellung für das Journal ändern

Wie (und ob) das Journal gespeichert wird, wird über den Wert des Schlüssels Storage geregelt

  • Unter Ubuntu ist der Standardwert auto
  • Dabei wird die Journal-Datei im Verzeichnis/run/log/UUID_DES_VERZEICHNISSES/ angelegt und geht nach dem Herunterfahren des Systems verloren

Damit die Journaldateien - und damit alle Logs - für längere Zeit gespeichert werden, gibt es zwei Möglichkeiten:# Man legt das Verzeichnis /var/log/journal/ an

  • Nach dem Neustart des Systems wird die Journal dort gespeichert und bleibt somit auch nach einem Neustart des Systems bestehen
  1. Man ändert in der Konfigurationsdatei /etc/systemd/journald.conf den Wert der Zeile
    Storage=auto
    auf
    Storage=persistent
    Nach einem Neustart des Systems wird der Ordner /var/log/journal/ automatisch angelegt und das Journal wird dort dauerhaft gespeichert

Hat man die erste Möglichkeit gewählt, so kehrt man zum nicht-dauerhaften Journal zurück, in dem man das händisch angelegte Verzeichnis löscht und dann den Rechner neu starten

Möchte man keine Journaldatei anlegen und somit das Logging komplett deaktivieren (nicht empfohlen!), muss man für den Schlüssel Storage den Wert none eintragen

Zusätzliche Journal-Dateien pro Benutzer

Ist das persistente Speichern des Journals aktiviert, wird zusätzlich zur Journal-Datei system.journal eine .journal-Datei für jeden Benutzer angelegt

  • Diese folgen dem Namensschema user-XXXX.journal, wobei XXXX die Nutzer-ID (UID) auf dem System ist
  • Der 1.. angelegte Benutzer hat bei Ubuntu die Nummer 1000, der zweite 1001 usw
  • In diesen Journal-Dateien werden dann nur die Logs gesammelt, die nur durch den Benutzer (und nicht das System) generiert werden

Weiterleitung der Logs an syslog

In der Standardkonfiguration von journald unter Ubuntu werden die Logs, welches ins zentrale Journal geschrieben werden, zusätzlich an rsyslog weiter geleitet, welches die traditionelle Logdatei /var/log/syslog anlegt

  • Die Weiterleitung erfolgt über den Socket /run/systemd/journal/syslog

Um das Weiterleiten zu deaktivieren, muss man in der Konfigurationsdatei von journald den Schlüssel ForwardToSyslog auf no setzen

Zu beachten ist, dass die Weiterleitung an syslog unabhängig von dem gesetzten Werte für Storage ist

  • D.. h. bei Storage=none und ForwardToSyslog=yes werden trotzdem alle Meldungen im syslog gespeichert

Persistenz

Das Journal speichert die Protokolldaten standardmäßig in /run/log/journal/

  • Das Verzeichnis /run/ ist naturgemäß flüchtig, weshalb die Protokolldaten beim Neubooten verloren gehen
  • Um persistente Protokolldaten zu erzielen, muss das Verzeichnis /var/log/journal/ mit den entsprechenden Angaben zu Eigentümer und Berechtigungen vorhanden sein, damit der systemd-journald-Service die Daten dort speichern kann

So können Sie das Verzeichnis mit systemd erstellen und die persistente Protokollierung aktivieren: # Öffnen Sie die Datei /etc/systemd/journald.conf als root zum Bearbeiten

vi /etc/systemd/journald.conf

Heben Sie die Auskommentierung der Zeile auf, die mit Storage= beginnt, und ändern Sie sie wie folgt

[...]
[Journal]
Storage=persistent
#Compress=yes [...]

Speichern Sie die Datei, und starten Sie systemd-journald neu

systemctl restart systemd-journald

Größenbeschränkung

Wenn die Journalprotokolldaten an einem persistenten Speicherort gespeichert werden, belegen sie bis zu 10 % des Dateisystems, auf dem sich /var/log/journal befindet

  • Ist /var/log/journal beispielsweise auf einer /var-Partition mit einer Kapazität von 30 GB gespeichert, so kann das Journal bis zu 3 GB des Festplattenspeichers belegen

Zum Bearbeiten dieser Größenbeschränkung ändern Sie die Option SystemMaxUse (und heben Sie die Auskommentierung dieser Option auf)

SystemMaxUse=50M

Weiterleiten an /dev/ttyX

Sie können das Journal an ein Terminalgerät weiterleiten, sodass Sie an einem bevorzugten Terminalbildschirm (beispielsweise /dev/tty12) über Systemmeldungen informiert werden

Ändern Sie die folgenden journald-Optionen

ForwardToConsole=yes
TTYPath=/dev/tty12

Weiterleitung an Syslog

journald ist abwärtskompatibel zu herkömmlichen syslog-Implementierungen wie rsyslog

apt install rsyslog
systemctl is-enabled rsyslog

Die Weiterleitung an syslog wird in /etc/systemd/journald.conf aktiviert

ForwardToSyslog=yes

Dateien

Datei Beschreibung