Zaawansowana analiza logów systemowych z użyciem journalctl w systemie Linux
Linux

Zaawansowana analiza logów systemowych z użyciem journalctl w systemie Linux

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

 

Zaawansowana analiza logów systemowych z użyciem journalctl w systemie Linux
Zaawansowana analiza logów systemowych z użyciem journalctl w systemie Linux

🛠️ 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.

Czytaj  Właśnie została wydana najnowsza wersja Ubuntu 23.04 - "Hirsute Hippo"

📦 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

 

Polecane wpisy
Jak interpretować logi systemowe w Linuxie? – Kompleksowy przewodnik
Jak interpretować logi systemowe w Linuxie? – Kompleksowy przewodnik

Jak interpretować logi systemowe w Linuxie? – Kompleksowy przewodnik Systemy operacyjne z rodziny Linux są znane z przejrzystego systemu logowania. Czytaj dalej

Czym są zmienne środowiskowe Linux? Kompleksowy przewodnik dla każdego użytkownika
Czym są zmienne środowiskowe Linux? Kompleksowy przewodnik dla każdego użytkownika

Czym są zmienne środowiskowe Linux? Kompleksowy przewodnik dla każdego użytkownika System operacyjny Linux oferuje użytkownikowi ogromną elastyczność i możliwość konfiguracji. Czytaj dalej

Marek "Netbe" Lampart Inżynier informatyki Marek Lampart to doświadczony inżynier informatyki z ponad 25-letnim stażem w zawodzie. Specjalizuje się w systemach Windows i Linux, bezpieczeństwie IT, cyberbezpieczeństwie, administracji serwerami oraz diagnostyce i optymalizacji systemów. Na netbe.pl publikuje praktyczne poradniki, analizy i instrukcje krok po kroku, pomagając administratorom, specjalistom IT oraz zaawansowanym użytkownikom rozwiązywać realne problemy techniczne.