Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:journald

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Letzte Überarbeitung Beide Seiten, nächste Überarbeitung
admin_grundlagen:journald [2018/06/08 13:10]
ingo_wichmann [Persistentes Journal]
admin_grundlagen:journald [2023/11/10 12:32]
ingo_wichmann [Persistentes Journal]
Zeile 1: Zeile 1:
- 
 ====== systemd: journal ====== ====== systemd: journal ======
 Die "​Logfiles"​ im systemd sind eine binäre Datenbank mit umfassenden Suchwerkzeugen Die "​Logfiles"​ im systemd sind eine binäre Datenbank mit umfassenden Suchwerkzeugen
Zeile 18: Zeile 17:
   * ''/​run/​systemd/​journal/<​machine-id>''​ <- dynamisch   * ''/​run/​systemd/​journal/<​machine-id>''​ <- dynamisch
  
-Die ''​machine-id'' ​steht in ''/​etc/​machine-id''​ und wird automatisch generiert oder mit ''​systemd-machine-id-setup''​. ((Bei geklonten Maschinen hilft ein ''​dbus-uuidgen > /​etc/​machineid''​)).+Die "machine-id" ​steht in ''/​etc/​machine-id''​ und wird automatisch generiert oder mit ''​systemd-machine-id-setup''​. ​''/​var/​lib/​dbus/​machine-id''​ beachten. Man kann eine Generierung erzwingen, indem man die Datei trunkiert 
 + 
 +  > /​etc/​machine-id 
 +  readlink /​var/​lib/​dbus/​machine-id || rm /​var/​lib/​dbus/​machine-id 
 +   
 +((man könnte auch eine id selbst erzeugen mit ''​dbus-uuidgen > /​etc/​machineid''​)). 
 +(( Debian Wiki zu dem Thema: 
 +https://​wiki.debian.org/​MachineId#​line-35 
 +))
  
 Das Verzeichnis ''/​var/​log/​journal''​ muss vorhanden sein; systemd loggt andernfalls nur temporär. Das Verzeichnis ''/​var/​log/​journal''​ muss vorhanden sein; systemd loggt andernfalls nur temporär.
Zeile 38: Zeile 45:
  
 in einem bestimmten Zeitraum in einem bestimmten Zeitraum
-  journalctl --since ​"2016-01-10" ​--until ​"2016-01-11 03:00"+  journalctl --since ​'2016-01-10' ​--until ​'2016-01-11 03:00'
   ​   ​
 ab einem bestimmten Level ab einem bestimmten Level
Zeile 56: Zeile 63:
   systemd-cat hostnamectl   systemd-cat hostnamectl
 ==== Größe beschränken ==== ==== Größe beschränken ====
-<file txt /​etc/​systemd/​journald.conf>​+Defaults für ''​persistent'':​ 10% filesystem. Max 4 GiB 
 + 
 +<file txt /​etc/​systemd/​journald.conf.d/​lukas.conf>
 SystemMaxUse=100M SystemMaxUse=100M
 SystemKeepFree=1G SystemKeepFree=1G
 </​file>​ </​file>​
  
 +==== Größe manuell verkleinern ====
 +Aktuelle Größe anzeigen:
 +  journalctl --disk-usage
 +sollte etwa das selbe sein wie:
 +  du -sh /​var/​log/​journal/​
 +
 +So lange alte Logs löschen, bis 100M erreicht sind:
 +  sudo journalctl --vacuum-size=100M
 +
 +oder: alle Logs löschen, die älter als 2 Tage sind:
 +  journalctl --vacuum-time=2days
  
 ==== Persistentes Journal ==== ==== Persistentes Journal ====
   mkdir /​var/​log/​journal   mkdir /​var/​log/​journal
   systemctl restart systemd-journald   systemctl restart systemd-journald
 +  journalctl --flush
 +==== Boots ====
 +Auflisten, letztes boot
 +  journalctl --list-boots
 +  journalctl -b
 +Ein bestimmtes boot (mit ID oder ordinal)
 +  journalctl -b 76fcd53ed6d54d24b1422e6bb48bab61
 +  journalctl -b -2
  
-Dann können ​Keys erstellt werden:+==== Versiegeln ==== 
 +So können ​die sealing keys erstellt werden
   journalctl --setup-keys   journalctl --setup-keys
  
Zeile 72: Zeile 101:
   * http://​0pointer.de/​blog/​projects/​journalctl.html   * http://​0pointer.de/​blog/​projects/​journalctl.html
  
 +====== Remote Logging ======
 +Benötigte Pakete: systemd-journal-remote
 +===== Push Betrieb =====
 +==== Receiver ====
 +Zunächst plain HTTP. Im ''​systemd-journal-remote.socket''​ steht der ''​ListenStream=19532''​
 +als Standard-Port.
 +
 +  systemctl edit systemd-journal-remote.service
 +
 +HTTPS durch HTTP ersetzen. Eigentlich keine gute Idee ;-)
 +
 +<​file>​
 +[Service]
 +ExecStart=
 +ExecStart=...--listen-http...
 +</​file>​
 +
 +  systemctl enable --now systemd-journal-remote.socket
 +  ss -lnp '( sport = 19532 )'
 +
 +==== Sender ====
 +<file txt /​etc/​systemd/​journal-upload.conf>​
 +[Upload]
 +URL=http://​10.0.0.1:​19532
 +</​file>​
 +
 +  systemctl enable --now systemd-journal-upload.service
admin_grundlagen/journald.txt · Zuletzt geändert: 2023/11/24 08:25 von natureshadow2