Zaawansowana analiza logów systemowych z użyciem journalctl w systemie Linux
journalctl to potężne narzędzie do przeglądania i filtrowania logów w systemach z systemd. Pozwala szybko zdiagnozować błędy, śledzić incydenty bezpieczeństwa, restart usług, a nawet analizować awarie jądra.
🧱 Co to jest journalctl?
journalctl to polecenie służące do przeszukiwania i zarządzania logami zapisanymi przez systemd-journald. W przeciwieństwie do klasycznych plików w /var/log/, logi są przechowywane w binarnym formacie, co pozwala na:
- filtrowanie po czasie, usłudze, PID, użytkowniku
- przeszukiwanie i eksportowanie
- podświetlanie błędów

🛠️ Podstawowe użycie
Wyświetlenie wszystkich logów (od najstarszych):
journalctl
Logi od najnowszych:
journalctl -r
Wyświetlanie z podglądem w czasie rzeczywistym (jak tail -f):
journalctl -f
🕒 Filtrowanie według czasu
Logi z ostatniej godziny:
journalctl --since "1 hour ago"
Logi z konkretnej daty:
journalctl --since "2025-08-01" --until "2025-08-05"
🔧 Filtrowanie według usługi systemd
Zobacz logi dla konkretnej usługi, np. SSH:
journalctl -u ssh.service
Logi dla nginx:
journalctl -u nginx
🔐 Filtrowanie według użytkownika
Wyświetlenie logów sesji użytkownika:
journalctl _UID=1000
Możesz też użyć:
journalctl --user
💥 Sprawdzanie błędów systemowych i restartów
Logi z ostatniego restartu systemu:
journalctl -b
Tylko błędy (err):
journalctl -p err -b
Poważniejsze błędy (krytyczne):
journalctl -p crit -b
🧪 Diagnostyka awarii usługi
Załóżmy, że fail2ban nie działa:
journalctl -u fail2ban --since "1 hour ago"
Lub:
systemctl status fail2ban
Połączenie z logami często daje jasny obraz błędu.
📦 Eksport logów do pliku
Przydatne przy analizie zdalnej lub dla wsparcia technicznego:
journalctl -u nginx --since today > nginx-log.txt
🔧 Czyszczenie logów systemowych (opcjonalnie)
Jeśli journal zajmuje zbyt dużo miejsca:
sudo journalctl --vacuum-time=7d
Lub do 100MB:
sudo journalctl --vacuum-size=100M
✅ Podsumowanie
journalctl to nie tylko zamiennik tail – to potężne narzędzie diagnostyczne, które powinno być w codziennym arsenale każdego admina i power-usera. Dzięki niemu:
- szybciej znajdziesz przyczynę problemu
- możesz tworzyć automatyczne alerty (np. z
cron) - lepiej zrozumiesz działanie usług i systemu






