Logs & Journalctl
Logs & Journalctl – Cheatsheet
Schnellreferenz für Log-Analyse unter Linux.
Wichtige Log-Dateien
| Datei | Inhalt |
|---|---|
/var/log/syslog |
System (Debian) |
/var/log/messages |
System (RHEL) |
/var/log/auth.log |
SSH, Login, sudo |
/var/log/kern.log |
Kernel |
/var/log/nginx/ |
Nginx |
/var/log/apache2/ |
Apache |
# Live verfolgen
tail -f /var/log/syslog
# Mehrere Dateien
tail -f /var/log/syslog /var/log/auth.log
Journalctl Basics
# Alle Logs
journalctl
# Live verfolgen
journalctl -f
# Neueste zuerst
journalctl -r
# Letzte 100 Zeilen
journalctl -n 100
# Ohne Pager
journalctl --no-pager
Nach Zeit filtern
# Seit Boot
journalctl -b
# Vorheriger Boot
journalctl -b -1
# Seit heute
journalctl --since today
# Letzte Stunde
journalctl --since "1 hour ago"
# Zeitbereich
journalctl --since "10:00" --until "11:00"
# Datum
journalctl --since "2024-01-15" --until "2024-01-16"
Nach Service filtern
# Ein Service
journalctl -u nginx
# Mehrere Services
journalctl -u nginx -u php-fpm
# Service live
journalctl -u nginx -f
# Service seit Boot
journalctl -u nginx -b
Nach Priorität filtern
journalctl -p err # Nur Fehler
journalctl -p warning # Warnungen+
journalctl -p 0..3 # Kritisch
# Prioritäten:
# 0=emerg, 1=alert, 2=crit, 3=err
# 4=warning, 5=notice, 6=info, 7=debug
Kernel & Boot
# Kernel-Logs
journalctl -k
dmesg
dmesg -T # Mit Timestamp
# Boot-Liste
journalctl --list-boots
Suchen & Filtern
# Mit grep
journalctl | grep -i "error"
# Mit Kontext
journalctl | grep -B5 -A5 "error"
# JSON-Output
journalctl -o json-pretty
Speicher verwalten
# Verbrauch anzeigen
journalctl --disk-usage
# Aufräumen nach Größe
sudo journalctl --vacuum-size=500M
# Aufräumen nach Alter
sudo journalctl --vacuum-time=30d
Häufige Aufgaben
# Service debuggen
systemctl status nginx
journalctl -u nginx -n 50
# SSH-Versuche
journalctl -u sshd | grep -i "failed"
grep "Failed password" /var/log/auth.log
# Fehler nach Reboot
journalctl -b -1 -p err
# Cron-Jobs
journalctl -u cron
grep CRON /var/log/syslog
# Festplatten-Fehler
dmesg | grep -i "error\|i/o"
# OOM Killer
journalctl -k | grep -i "oom\|killed"
Login-Historie
# Letzte Logins
last
# Alle User
lastlog
# Fehlgeschlagen
lastb
# Aktuell eingeloggt
who
w
Logrotate
# Manuell ausführen
sudo logrotate -f /etc/logrotate.conf
# Testen
sudo logrotate -d /etc/logrotate.d/nginx