Hoe te bekijken en te schrijven naar systeemlogbestanden op Ubuntu
Linux registreert een groot aantal gebeurtenissen naar de schijf, waar ze meestal worden opgeslagen in de map / var / log in platte tekst. De meeste logboekinvoeren gaan via de systeemlogboek-daemon, syslogd, en worden naar het systeemlogboek geschreven.
Ubuntu bevat een aantal manieren om deze logboeken te bekijken, hetzij grafisch, hetzij via de opdrachtregel. U kunt ook uw eigen logberichten naar het systeemlogboek schrijven - met name handig in scripts.
Logs grafisch bekijken
Als u logbestanden wilt weergeven met een eenvoudig te gebruiken grafische toepassing, opent u de toepassing Log File Viewer vanuit uw Dash.
De Log File Viewer geeft standaard een aantal logs weer, inclusief uw systeemlog (syslog), pakketbeheerlogboek (dpkg.log), authenticatielogboek (auth.log) en grafisch serverlogboek (Xorg.0.log). U kunt alle logboeken in één venster bekijken - wanneer een nieuwe loggebeurtenis wordt toegevoegd, verschijnt deze automatisch in het venster en wordt deze vetgedrukt weergegeven. U kunt ook op Ctrl + F drukken om uw logboekberichten te doorzoeken of het menu Filters gebruiken om uw logbestanden te filteren.
Als u andere logbestanden hebt die u wilt bekijken, bijvoorbeeld een logbestand voor een specifieke toepassing, klikt u op het menu Bestand, selecteert u Openen en opent u het logbestand. Het verschijnt naast de andere logbestanden in de lijst en wordt gecontroleerd en automatisch bijgewerkt, net als de andere logboeken.
Schrijven naar het systeemlogboek
De houthakker hulpprogramma stelt u in staat om snel een bericht naar uw systeemlogboek te schrijven met een enkele, eenvoudige opdracht. Als u bijvoorbeeld het bericht Hello World naar uw systeemlogboek wilt schrijven, gebruikt u de volgende opdracht:
logger "Hello World"
U kunt ook aanvullende informatie opgeven, bijvoorbeeld als u de logger-opdracht in een script gebruikt, wilt u misschien de naam van het script opnemen:
logger -t ScriptName "Hello World"
Logs bekijken in de terminal
De dmesg command geeft de berichtenbuffer van de Linux-kernel weer die in het geheugen is opgeslagen. Voer deze opdracht uit en u krijgt veel uitvoer.
Om deze uitvoer te filteren en te zoeken naar de berichten waarin u geïnteresseerd bent, kunt u deze doorsturen naar grep:
dmesg | Grep iets
U kunt ook de uitvoer van de dmesg-opdracht naar minder, waarmee je in je eigen tempo door de berichten kunt bladeren. Om minder af te sluiten, druk op Q.
dmesg | minder
Als een grep-zoekopdracht een groot aantal resultaten oplevert, kunt u ook de uitvoer naar minder sturen:
dmesg | grep iets | minder
Naast het openen van de logbestanden in / var / log in elke teksteditor, kunt u de kat commando om de inhoud van een log (of een ander bestand) naar de terminal af te drukken:
cat / var / log / syslog
Net als de opdracht dmesg hierboven, zal dit een grote hoeveelheid uitvoer produceren. U kunt de grep en minder opdrachten om met de uitvoer te werken:
grep something / var / log / syslog
minder / var / log / syslog
Andere nuttige opdrachten zijn de hoofd en staart commando's. head drukt de eerste n regels in een bestand af, terwijl tail de laatste n regels in het bestand afdrukt - als u recente logberichten wilt bekijken, is de tail-opdracht bijzonder nuttig.
hoofd -n 10 / var / log / syslog
tail -n 10 / var / log / syslog
Sommige applicaties schrijven mogelijk niet naar het systeemlogboek en produceren mogelijk hun eigen logbestanden, die u op dezelfde manier kunt bewerken - u zult ze over het algemeen ook vinden in de directory / var / log. De Apache-webserver maakt bijvoorbeeld een / var / log / apache2-map met daarin de logboeken.