Administrator Linuksa powinien być w stanie odczytać i zrozumieć różne rodzaje wiadomości, które są generowane przez wszystkie systemy Linux w celu rozwiązania problemu. Komunikaty te, zwane logami, są inicjowane przez Linuksa i działające w nim aplikacje. Linux ciągle tworzy, przechowuje i przetwarza te logi poprzez różne pliki konfiguracyjne, programy, polecenia i demony. Jeśli wiesz jak czytać te pliki i optymalnie wykorzystywać różne polecenia, które wymienimy w tym poradniku, możesz rozwiązywać problemy jak zawodowiec!
Ważne jest, aby pamiętać, że Linux przechowuje swoje pliki dziennika w katalogu /var/log w formacie tekstowym.
Przeglądanie logów systemowych w Ubuntu
Aby dotrzeć do sedna problemu, lub sprawdzić czy Twoja aplikacja lub system zachowuje się w pożądany sposób, możesz przeglądać pliki logów systemowych albo graficznie, albo poprzez wiersz poleceń w następujący sposób:
- Narzędzie Gnome Logs (graficznie)
- Narzędzie Log File Viewer (graficznie)
- Linux Terminal (wiersz poleceń)
Przeglądanie plików dziennika poprzez Gnome Logs
’Logs' jest domyślnym narzędziem, które jest dostarczane z najnowszymi wersjami Ubuntu np.g., Ubuntu 18.04 LTS (Bionic Beaver). Aby uzyskać do niego dostęp,
Wpisz Logs w Ubuntu dash:
Będziesz w stanie zobaczyć Logs narzędzie otwarte, z opcją przeglądania logów dla Aplikacje, System, Bezpieczeństwo i Sprzęt.
Kliknij zakładkę System, aby wyświetlić dzienniki systemowe:
Możesz tutaj wyświetlić wszystkie dzienniki systemowe wraz z czasem ich wygenerowania. W tym oknie można wykonać następujące czynności:
- Wyświetl zawartość dziennika, klikając go.
- Szukaj dziennika, klikając ikonę wyszukiwania, a następnie podając słowa kluczowe w pasku wyszukiwania. Pasek wyszukiwania oferuje także szereg filtrów, które można zastosować w celu dokładnego określenia, co (wybierz pole Dziennik, aby przefiltrować dzienniki według niego) i kiedy (wybierz zakres znaczników czasowych, które mają być wyświetlane) chcesz zobaczyć:
- Możesz także wyeksportować dzienniki do pliku, klikając przycisk eksportu znajdujący się w prawym górnym rogu okna Dzienniki. Następnie można zapisać plik dziennika, określając jego nazwę i lokalizację.
Przez przeglądarkę plików dziennika
Przeglądarka plików dziennika jest domyślnym narzędziem dołączanym do starszych wersji Ubuntu. Jeśli Twoja edycja Ubuntu nie posiada domyślnie tej aplikacji, możesz ją pobrać i zainstalować poprzez Ubuntu Software.Reklama
Aby uzyskać dostęp do Log File Viewer:
- Enter Log Viewer w Ubuntu Dash
lub
- Jeśli zainstalowałeś ten program poprzez Ubuntu Software, możesz go uruchomić wyszukując go w Ubuntu Software w następujący sposób, a następnie klikając przycisk Launch:
Przeglądarka plików dziennika pojawi się w następujący sposób:
Lewy panel okna przedstawia szereg domyślnych kategorii dzienników, a prawy panel – listę dzienników dla wybranej kategorii.
Kliknij zakładkę syslog, aby wyświetlić dzienniki systemowe. Można wyszukać określony dziennik, używając kombinacji klawiszy ctrl+F, a następnie wpisując słowo kluczowe. Gdy zostanie wygenerowane nowe zdarzenie dziennika, jest ono automatycznie dodawane do listy dzienników i można je zobaczyć w postaci pogrubionej. Możesz również filtrować logi poprzez menu Filtry znajdujące się w górnym pasku menu.
Aby wyświetlić log dla konkretnej aplikacji, kliknij opcję Otwórz z menu Plik. Otworzy się następujące okno Otwórz dziennik, z którego możesz wybrać dziennik:
Kliknij na plik dziennika i kliknij Otwórz. Będziesz teraz w stanie zobaczyć logi z wybranego pliku dziennika w Log File Viewer.
Widok plików dziennika poprzez Terminal
Możesz również zobaczyć logi systemowe poprzez wiersz poleceń, tj. Terminal Ubuntu.
Otwórz Terminal i wprowadź następujące polecenie:
$ dmesg
To polecenie pobiera wszystkie wiadomości z bufora jądra. Możesz zobaczyć wyjście jak poniżej:
Zobaczysz, że jest to bardzo dużo informacji. Informacje te będą użyteczne tylko wtedy, gdy zastosujemy pewne filtry, aby zobaczyć to, co chcemy zobaczyć.
Dostosowywanie wyjścia dmesg
- Aby zobaczyć wiadomości w swoim własnym tempie, użyj następującego polecenia:
$ dmesg |less
To polecenie wyświetli tylko określoną liczbę wiadomości na ekranie. Można nacisnąć Enter, aby przejść do następnego komunikatu lub nacisnąć Q, aby wyjść z polecenia.
- Aby wyszukać wiadomość zawierającą określone słowo kluczowe, użyj następującego polecenia:
$ dmesg |grep
Na przykład, jeśli chcesz wyszukać wszystkie wiadomości zawierające słowo core, możesz użyć następującego polecenia:
$ dmesg |grep core
W Terminalu będą teraz wyświetlane tylko te wiadomości, które zawierają słowo „core” w czerwonym kolorze.
Otwórz plik logu komendą cat
Komenda dmesg otwiera wszystkie logi z katalogu /var/log. Aby otworzyć plik logów z innej lokalizacji, użyj następującego polecenia:
$ cat
Przykład:
$ cat /var/log/syslog
To polecenie wydrukuje logi z pliku syslog na ekran. Ponownie zauważysz, że to polecenie drukuje wszystkie informacje i nie jest łatwo je przejrzeć. Również tutaj możesz użyć filtrów 'grep' i 'less', aby wyświetlić pożądane dane wyjściowe, jak poniżej:
$ cat |grep
I
$ cat |less
Pisanie do dziennika systemowego
Czasami potrzebujemy napisać niestandardowe wiadomości do naszego dziennika systemowego podczas procesu rozwiązywania problemów. Zarówno Gnome Log jak i Log File Viewer są zbudowane tak, aby wyświetlać niestandardowe wiadomości, które możesz napisać przez Terminal.
Otwórz Terminal Ubuntu i wpisz następujące polecenie:
$ logger "This is a custom message”
Możesz zobaczyć niestandardowy komunikat dziennika, na końcu powyższej listy dziennika, wyświetlany w graficznej przeglądarce plików dziennika.
Możesz również użyć polecenia logger wewnątrz skryptu w celu dostarczenia dodatkowych informacji. W takim przypadku należy użyć następującego polecenia wewnątrz skryptu:
$ logger -t scriptname "This is a custom message”
Poprzez ćwiczenie z tym samouczkiem można nauczyć się rozwiązywać problemy z systemem i aplikacjami, uzyskując dostęp do logów systemowych i rozumiejąc je.