Sådan kan du se og skrive til systemlogfiler på Ubuntu
Linux logger en stor del af begivenhederne til disken, hvor de mest gemmes i / var / log-mappen i almindelig tekst. De fleste logposter går gennem systemlogging-demonen, syslogd og er skrevet til systemloggen.
Ubuntu indeholder en række måder at se disse logfiler på, enten grafisk eller fra kommandolinjen. Du kan også skrive dine egne logbeskeder til systemloggen - særligt nyttigt i scripts.
Visning af logfiler grafisk
Hvis du vil se logfiler ved hjælp af en brugervenlig, grafisk applikation, skal du åbne Log File Viewer-programmet fra din Dash.
Logfilvisningsprogrammet viser som standard en række logfiler, herunder din systemlog (syslog), pakkehåndteringslog (dpkg.log), godkendelseslog (auth.log) og grafisk serverlogbog (Xorg.0.log). Du kan se alle logfilerne i et enkelt vindue - når en ny loghændelse er tilføjet, vises den automatisk i vinduet og vil være fed. Du kan også trykke på Ctrl + F for at søge i dine logbeskeder eller bruge menuen Filtrer til at filtrere dine logfiler.
Hvis du har andre logfiler, du vil se - sig en logfil til et bestemt program - du kan klikke på Fil-menuen, vælge Åbn og åbne logfilen. Den vises sammen med de øvrige logfiler i listen og vil blive overvåget og automatisk opdateret, ligesom de andre logfiler.
Skriver til systemloggen
Det logger værktøj giver dig mulighed for hurtigt at skrive en besked til dit system log med en enkelt, enkel kommando. For eksempel at skrive meddelelsen Hello World til systemloggen, skal du bruge følgende kommando:
logger "Hello World"
Du kan også ønske at angive yderligere oplysninger - for eksempel, hvis du bruger logger-kommandoen inden for et script, skal du muligvis inkludere navnet på scriptet:
logger -t ScriptName "Hello World"
Visning af logfiler i terminalen
Det dmesg kommandoen viser Linux-kernens meddelelsesbuffer, som er gemt i hukommelsen. Kør denne kommando, og du får meget output.
For at filtrere denne output og søge efter de beskeder, du er interesseret i, kan du røre den til grep:
dmesg | grep noget
Du kan også rør output fra dmesg kommandoen til mindre, som giver dig mulighed for at rulle gennem meddelelserne i dit eget tempo. For at afslutte mindre, tryk på Q.
dmesg | mindre
Hvis en grep-søgning giver en stor mængde resultater, kan du også røres udgangen til mindre:
dmesg | grep noget | mindre
Udover at åbne logfilerne placeret i / var / log ind i et tekstredigeringsprogram, kan du bruge kat kommando til at udskrive indholdet af en log (eller en anden fil) til terminalen:
cat / var / log / syslog
Ligesom dmesg kommandoen ovenfor vil dette producere en stor mængde output. Du kan bruge grep og mindre kommandoer til at arbejde med output:
grep noget / var / log / syslog
mindre / var / log / syslog
Andre nyttige kommandoer omfatter hoved og hale kommandoer. hoved udskriver de første n linjer i en fil, mens halen udskriver de sidste n linjer i filen - hvis du vil se de seneste logbeskeder, er hale kommandoen særlig nyttig.
hoved-n 10 / var / log / syslog
hale -n 10 / var / log / syslog
Nogle programmer kan muligvis ikke skrive til systemloggen og kan producere deres egne logfiler, som du kan manipulere på samme måde - du finder dem generelt også i / var / log-mappen. For eksempel opretter Apache-webserveren en / var / log / apache2-mappe, der indeholder sine logfiler.