0Pricing
Linux Server Deployment & SSH Mastery · Lekcja

Zrozumienie logów systemowych

Poznaj katalog `/var/log` i używaj `journalctl` do interpretowania logów systemowych, aplikacyjnych i bezpieczeństwa na potrzeby debugowania oraz audytu.

Zrozumienie logów systemowych to bezpłatna lekcja Linux Server Deployment & SSH Mastery na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Linux Server Deployment & SSH Mastery, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.

Dlaczego serwery prowadzą dzienniki

Wyobraźmy sobie serwer jako zapracowanego pracownika. Wykonuje wiele zadań — od obsługi stron internetowych po przetwarzanie danych. Skąd wiadomo, czym się zajmował?

  • Dzienniki systemowe są niczym dziennik prowadzony przez serwer.
  • Rejestrują zdarzenia, błędy, ostrzeżenia i inne działania.
  • Dzienniki te mają kluczowe znaczenie dla zrozumienia działania serwera, debugowania problemów i zapewnienia bezpieczeństwa.

Lokalizacja dzienników: /var/log

W systemach Linux większość tradycyjnych plików dziennika jest przechowywana w określonym katalogu: /var/log.

Katalog ten pełni funkcję centralnego repozytorium dzienników systemu, usług i aplikacji. Podczas rozwiązywania problemu często jest to pierwsze miejsce, które należy sprawdzić.

Zaglądamy do /var/log

Użyjmy polecenia ls, aby sprawdzić, jakie rodzaje plików dziennika zwykle znajdują się w katalogu /var/log na serwerze Linux.

Zauważą Państwo wiele plików, często nazwanych na podstawie usługi lub rodzaju rejestrowanych zdarzeń.

ls -lh /var/log

Najważniejsze pliki dzienników

Chociaż katalog /var/log zawiera wiele plików, niektóre z nich są używane częściej:

  • syslog (lub messages): Ogólna aktywność systemu i komunikaty rozruchowe niezwiązane z jądrem.
  • auth.log (lub secure): Próby uwierzytelnienia, użycie sudo i zdarzenia związane z bezpieczeństwem.
  • kern.log: Komunikaty dotyczące jądra, często przydatne przy diagnozowaniu problemów ze sprzętem lub sterownikami.
  • boot.log: Komunikaty rejestrowane podczas uruchamiania systemu.

Nowoczesne dzienniki z journalctl

W nowoczesnych dystrybucjach Linuksa korzystających z systemd dzienniki są często zarządzane przez journal — ustrukturyzowany system rejestrowania.

Podstawowym narzędziem wiersza poleceń do obsługi dziennika systemd jest journalctl. Zapewnia ono zaawansowane możliwości filtrowania i wyświetlania danych.

Pierwsze spojrzenie na journalctl

Aby wyświetlić wszystkie wpisy dziennika od początku, wystarczy uruchomić journalctl. Dzienniki zostaną wyświetlone w widoku stronicowanym, podobnym do programu less.

Naciśnięcie q kończy działanie przeglądarki.

journalctl

Filtrowanie według usługi i czasu

Narzędzie journalctl doskonale nadaje się do filtrowania. Można zawęzić dzienniki do określonych usług lub przedziałów czasu:

  • -u <service>: Wyświetla dzienniki określonej jednostki systemd (np. sshd, nginx).
  • --since "time": Wyświetla dzienniki od określonego momentu (np. "1 hour ago", "2023-01-01").
journalctl -u sshd --since "1 hour ago"

Monitorowanie w czasie rzeczywistym za pomocą -f

Podczas aktywnego debugowania problemu lub obserwowania nowych zdarzeń niezwykle przydatne jest polecenie journalctl -f. Opcja -f (follow) wyświetla nowe wpisy dziennika w czasie rzeczywistym.

Proszę wypróbować to polecenie, a następnie otworzyć drugi terminal i spróbować zalogować się przez SSH, aby zobaczyć pojawiające się nowe wpisy!

journalctl -f

Dzienniki pomocne w rozwiązywaniu problemów

Dzienniki systemowe są najlepszym przyjacielem podczas debugowania. Jeśli usługa się nie uruchamia lub aplikacja ulega awarii:

  • Sprawdź dzienniki tej konkretnej usługi (np. journalctl -u myapp.service).
  • Szukaj słów kluczowych, takich jak error, fail, warning lub permission denied.
  • Dzienniki często zawierają dokładne komunikaty o błędach lub wskazówki pomagające znaleźć ich główną przyczynę.

Quiz detektywistyczny: dzienniki

Próbują Państwo debugować usługę serwera WWW o nazwie nginx, która nie uruchomiła się po niedawnej aktualizacji systemu. Które z poniższych poleceń journalctl będzie najbardziej pomocne w natychmiastowej diagnozie?

Podsumowanie: pełna moc dzienników

Doskonale! Dowiedzieli się już Państwo, jak korzystać z mocy dzienników systemowych:

  • Dzienniki są kluczowymi zapisami pomocnymi w debugowaniu i audytowaniu.
  • /var/log to tradycyjne miejsce przechowywania wielu plików dziennika.
  • journalctl to nowoczesne, zaawansowane narzędzie do odpytywania dzienników journal systemd.
  • Dzienniki można filtrować według usługi i czasu oraz śledzić je w czasie rzeczywistym.

Warto utrwalać te umiejętności — gdy coś przestaje działać, dzienniki często są pierwszym miejscem, które należy sprawdzić!

Często zadawane pytania

Czy lekcja „Zrozumienie logów systemowych” jest bezpłatna?

Tak — pełny tekst „Zrozumienie logów systemowych” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Linux Server Deployment & SSH Mastery, przejdź na CoddyKit PRO. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.

Co nauczysz się w „Zrozumienie logów systemowych”?

Poznaj katalog `/var/log` i używaj `journalctl` do interpretowania logów systemowych, aplikacyjnych i bezpieczeństwa na potrzeby debugowania oraz audytu. Ćwiczysz Linux Server Deployment & SSH Mastery z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Linux Server Deployment & SSH Mastery?

Nie wymagamy żadnego doświadczenia. Linux Server Deployment & SSH Mastery w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Zrozumienie logów systemowych”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Linux Server Deployment & SSH Mastery?

Tak. Każda lekcja Linux Server Deployment & SSH Mastery zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Narzędzia do monitorowania systemu
  2. Zrozumienie logów systemowych
  3. Rotacja i archiwizacja logów
  4. Scentralizowane monitorowanie i alerty
← Powrót do Linux Server Deployment & SSH Mastery