Een Linux-beheerder moet de verschillende soorten berichten die door alle Linux-systemen worden gegenereerd, kunnen lezen en begrijpen om een probleem op te lossen. Deze berichten, logboeken genoemd, worden gegenereerd door Linux en de toepassingen die erop draaien. Linux maakt, bewaart en recyclet deze logs voortdurend via verschillende configuratiebestanden, programma’s, commando’s en daemons. Als je weet hoe je deze bestanden moet lezen en optimaal gebruik kunt maken van de verschillende commando’s die we in deze tutorial zullen noemen, kun je problemen oplossen als een pro!
Het is belangrijk om op te merken dat Linux zijn logbestanden in de /var/log directory bewaart in tekstformaat.
Bekijken van systeem logs op Ubuntu
Om de kern van een probleem te bereiken, of om te zien of uw applicatie of systeem zich gedraagt op de gewenste manier, kunt u de systeem log bestanden bekijken, grafisch of via de commandoregel op de volgende manieren:
- Gnome Logs utility (Grafisch)
- Log File Viewer utility (Grafisch)
- Linux Terminal (Command Line)
View Log Files Through Gnome Logs
‘Logs’ is het standaard hulpprogramma dat wordt geleverd met de nieuwste versies van Ubuntu bijv.g., Ubuntu 18.04 LTS (Bionic Beaver). Om het te openen,
Typ Logs in het Ubuntu-dashboard:
U zult het Logs-hulpprogramma geopend zien, met de optie om logs te bekijken voor Applicaties, Systeem, Beveiliging en Hardware.
Klik op het tabblad Systeem om de systeemlogboeken te bekijken:
Hier kunt u alle systeemlogboeken bekijken, samen met het tijdstip waarop ze zijn gegenereerd. Via dit venster kunt u de volgende acties uitvoeren:
- De inhoud van een log weergeven door erop te klikken.
- Zoek naar een log door op het zoekpictogram te klikken en vervolgens trefwoorden in de zoekbalk op te geven. De zoekbalk biedt ook een aantal filters die u kunt toepassen om precies aan te geven Wat (Selecteer een Journaal-veld om de logs op basis daarvan te filteren) en Wanneer (Selecteer het tijdstempelbereik van de logboekvermeldingen die moeten worden weergegeven) u wilt zien:
- U kunt logboeken ook naar een bestand exporteren door op de knop Exporteren te klikken die zich in de rechterbovenhoek van het venster Logs bevindt. U kunt het logbestand vervolgens opslaan door een naam en locatie op te geven.
Door Log File Viewer
De Log File Viewer is het standaardhulpprogramma dat met de oudere versies van Ubuntu wordt meegeleverd. Als uw editie van Ubuntu deze toepassing niet standaard heeft, kunt u deze downloaden en installeren via Ubuntu Software.Advertentie
Om toegang te krijgen tot Log File Viewer:
- Voeg Log Viewer in Ubuntu Dash
of
- Als u dit programma via Ubuntu Software hebt geïnstalleerd, kunt u het starten door er als volgt naar te zoeken in de Ubuntu Software en vervolgens op de knop Starten te klikken:
De Log File Viewer verschijnt als volgt:
Het linkerpaneel van het venster toont een aantal standaardlogcategorieën en het rechterpaneel toont een lijst met logbestanden voor de geselecteerde categorie.
Klik op het tabblad syslog om de systeemlogs te bekijken. U kunt naar een specifiek log zoeken door ctrl+F te gebruiken en vervolgens het trefwoord in te voeren. Wanneer een nieuw log event wordt gegenereerd, wordt het automatisch toegevoegd aan de lijst van logs en kunt u het vetgedrukt zien. U kunt uw logs ook filteren via het menu Filters in de bovenste menubalk.
Om een log voor een specifieke toepassing te bekijken, klikt u op de optie Openen in het menu Bestand. Het volgende venster Logboek openen wordt geopend, zodat u het logboek kunt kiezen:
Klik op een logbestand en klik op Openen. U kunt nu de logs van het geselecteerde logbestand bekijken in de Log File Viewer.
Bekijk logbestanden via de Terminal
U kunt de systeemlogs ook bekijken via de opdrachtregel, d.w.z. de Ubuntu Terminal.
Open de Terminal en voer het volgende commando in:
$ dmesg
Dit commando haalt alle berichten op uit de buffer van de kernel. U kunt de uitvoer als volgt zien:
U zult zien dat dit een heleboel informatie is. Deze informatie is enkel nuttig als we enkele filters toepassen om te zien wat we willen zien.
Aanpassen van dmesg uitvoer
- Om berichten op uw eigen tempo te zien, gebruikt u het volgende commando:
$ dmesg |less
Dit commando zal slechts een bepaald aantal berichten per scherm tonen. U kunt op Enter drukken om naar het volgende bericht te gaan of op Q om de opdracht af te sluiten.
- Om te zoeken naar een bericht dat een specifiek trefwoord bevat, gebruikt u de volgende opdracht:
$ dmesg |grep
U kunt bijvoorbeeld de volgende opdracht gebruiken als u wilt zoeken naar alle berichten die het woord core bevatten
$ dmesg |grep core
De Terminal zal nu alleen de berichten weergeven die het woord “core” in rode kleur bevatten.
Een logbestand openen met het cat commando
Het dmesg commando opent alle logs uit de /var/log directory. Om het logbestand vanaf een andere locatie te openen, gebruikt u het volgende commando:
$ cat
Voorbeeld:
$ cat /var/log/syslog
Dit commando drukt de logs van het syslogbestand af op het scherm. Je zult weer zien dat dit commando alle informatie afdrukt en het is niet gemakkelijk om het door te nemen. Ook hier kunt u de ‘grep’ en ‘less’ filters gebruiken om de gewenste uitvoer als volgt weer te geven:
$ cat |grep
En
$ cat |less
Het schrijven naar het systeem log
Soms moeten we tijdens het troubleshooting proces aangepaste berichten naar ons systeem log schrijven. Zowel de Gnome Log als de Log File Viewer programma’s zijn gebouwd om een aangepast bericht weer te geven dat je via de Terminal kunt schrijven.
Open de Ubuntu Terminal en typ het volgende commando:
$ logger "This is a custom message”
U ziet het aangepaste log bericht, aan het eind van de bovenstaande log lijst, weergegeven in de grafische log bestand viewer.
U kunt de loggeropdracht ook binnen een script gebruiken om extra informatie te geven. Gebruik in dat geval het volgende commando binnen uw script:
$ logger -t scriptname "This is a custom message”
Door mee te oefenen met deze tutorial, kunt u leren uw systeem en applicatie problemen op te lossen door toegang te krijgen tot en inzicht te krijgen in systeem logs.