Jak wyświetlić dzienniki Systemctl

Jak Wyswietlic Dzienniki Systemctl



Systemd jest jednym z powszechnie przyjętych systemów init w systemie Linux. Kluczową zaletą systemd jest możliwość zarządzania dziennikami systemowymi. Gromadzi wszystkie komunikaty jądra i procesy użytkownika w dzienniku o nazwie Dziennik . The dziennikowane to demon przechwytujący i zarządzający dziennikami w pliku binarnym. Główną zaletą tego demona jest przechowywanie danych w ustrukturyzowanej i indeksowanej formie, co ułatwia dostęp i analizę poprzez dziennikctl pożytek.

W tym przewodniku omówię sposób przeglądania dzienników systemowych w systemie Linux przy użyciu różnych narzędzi wiersza poleceń.

Notatka: Polecenia wymienione w tym przewodniku są wykonywane w systemie Ubuntu. Będą działać bez błędów we wszystkich dystrybucjach Linuksa dostarczonych z systemem init systemd.







Metody przeglądania dzienników systemctl

Istnieją dwa podejścia do przeglądania dzienników systemowych w systemie Linux:



Systemctl udostępnia najnowsze dzienniki specyficzne dla danej usługi, natomiast dziennikctl udostępnia szczegółowe dzienniki ogólnosystemowe dotyczące wszystkich usług i konkretnej usługi.



Przeanalizuję oba narzędzia, aby wyświetlić dzienniki systemowe. Ale najpierw zrozummy kluczową różnicę między poleceniami systemctl i journalctl.





Co to jest systemctl

Systemctl to narzędzie wiersza poleceń umożliwiające zarządzanie usługami systemowymi, takimi jak włączanie i wyłączanie usług oraz przeglądanie ich stanu. The stan systemctl polecenie wypisuje również kilka wierszy dziennika usługi na dole danych wyjściowych, a dziennik ten dotyczy ostatniego uruchomienia. Jednakże te wiersze dziennika usługi pochodzą wyłącznie z okresu po bieżącym uruchomieniu.

Co to jest dziennikctl

Journalctl to narzędzie wiersza poleceń używane do drukowania dzienników zebranych przez systemd. W porównaniu do systemctl zapewnia szczegółowe dane wyjściowe z opcjami filtrowania. To narzędzie jest przeznaczone do:



  • Czytaj logi (najstarszy dziennik jest na pierwszym miejscu)
  • Monitoruj logi
  • Filtruj logi według czasu, usługi lub użytkownika

Systemd zbiera logi z jądra, usług i demonów i przechowuje je w scentralizowanym miejscu.

Jak wyświetlić dziennik usługi za pomocą systemctl

Ogólna składnia znajdowania dziennika usługi przy użyciu metody systemctl użyteczność jest wymieniona poniżej.

stan systemctl [ Nazwa serwisu ]

Na przykład, aby wyświetlić informacje dziennika dotyczące usługa smbd użyj polecenia podanego poniżej.

status systemctl smbd.service

Aby uzyskać dane wyjściowe bez paginacji, dodaj plik –bez pagera opcję w poleceniu.

status systemctl smbd.service --bez pagera

Jak wyświetlić dziennik usługi za pomocą dziennikctl

Aby wyświetlić dziennik określonej usługi systemd, użyj dziennikctl z -W nazwa dowództwa i usługi lub jednostki.

dziennikctl -W [ Nazwa serwisu ]

W powyższym poleceniu -W flaga, skrót od -jednostka służy do filtrowania dziennikctl wyjście według nazwy jednostki.

Na przykład, aby wydrukować dziennik pliku smbd demon, zastąpię [Nazwa jednostki] z usługa smbd .

dziennikctl -W usługa smbd

Na wynikach widać, że najstarszy wpis pojawia się jako pierwszy, a następnie jest rejestrowany po każdym uruchomieniu.

Aby uzyskać najnowszy wpis, najpierw użyj -To jest skrót od – koniec pagera.

dziennikctl -W usługa smbd -To jest

Jeśli chcesz pominąć paginację w wynikach, po prostu dołącz plik –bez pagera w powyższych poleceniach.

Aby stale drukować wpisy dziennika w czasie rzeczywistym -F skrót od -podążać .

dziennikctl -W usługa smbd -F

Filtrowanie można dodatkowo rozszerzyć, używając flagi -b, skrótu od -uruchomić , który drukuje dzienniki na podstawie bieżącego rozruchu.

dziennikctl -W [ Nazwa jednostki ] -B

Wydrukujmy logi z usługa smbd z ostatniego rozruchu.

dziennikctl -W usługa smbd -B

Powyższe dane wyjściowe przypominają dane wyjściowe, które otrzymujemy za pomocą metody stan systemctl Komenda.

Aby uzyskać szczegółowy przegląd dziennika, użyj pliku -X skrót od -katalog opcja.

dziennikctl -W usługa smbd -X

Spowoduje to dołączenie krótkiego opisu dziennika.

Teraz, aby wydrukować dzienniki na podstawie czasu za pomocą dziennikctl, istnieją dwie opcje: -S skrót od -od I -W skrót od -dopóki .

dziennikctl -W [ Nazwa jednostki ] -S „[rok-miesiąc-dzień] [godziny:minuty:sekundy]”

Na przykład, aby wyświetlić dzienniki jednostki smbd z 2024:01:30 12:05:00 .

dziennikctl -W usługa smbd -S „2024:01:30 12:05:00”

Wniosek

Do przeglądania dzienników systemowych usługi służą dwa główne narzędzia: journalctl i systemctl. Dziennikctl jest specjalnie zaprojektowany do przeglądania dzienników systemd. Jednak systemctl ma również opcję wydrukowania dziennika usługi. Aby wydrukować dziennik korzystania z usługi, dziennikctl -u [nazwa jednostki] i systemctl [Nazwa jednostki].