Läs loggar med journalctl
Här ska vi gå igenom hur man läser ett Linuxsystems loggar med hjälp av
journalctl
, som är en del av systemd.
Är du intresserad av hur systemctl
fungerar för att hantera tjänster så läs
gärna den förgående artikeln om just
detta.
Läsa loggar
För att visa hela loggen som systemd har, alltifrån tjänster till kärnan kan
vi köra journalctl
utan några argument. Detta visar hela loggen i en pager,
normalt less
eller more
.
Filtrera loggarna
För att bara visa loggar sedan den senaste starten av systemet används flaggan
-b, alltså journalctl -b
.
För att bara visa loggar som har att göra med en specifik tjänst, till
exempel SSH-demonen, anges detta på följande sätt: journalctl -u sshd
.
Vill du bara visa SSH-demonens loggar sedan den senaste starten av systemet kan
vi lägga till -b flaggan; journalctl -u sshd -b
.
Är vi bara ute efter de 10 senaste logghändelserna kan vi lägga till -n för
newest. Här kan vi också specificera antalet händelser. Exempelvis för de 15
senaste logghändelserna för SSH, sedan den senaste omstarten, hade då blivit
journalctl -u sshd -b -n 15
. Det går alltså utmärkt att kombinera -u, -b,
-n och de flesta andra flaggor.
För att bara visa logghändelser från kärnan används flaggan -k för
kernel. Exempelvis för att visa alla logghändelser i kärnan från den senaste
omstarten: journalctl -k -b
.
Via datum och klockslag
Det går också att specificera klockslag, för att på så sätt enklare lokalisera fel som man vet inträffat vid en specifik dag eller tidpunkt.
Det enklaste är att bara ange ett startdatum. Detta görs med --since,
exempelvis journalctl --since "2018-06-18 02:10"
. Man kan dock förfina detta
genom att även ange ett slutdatum med --until på följande sätt: journalctl
--since "2018-06-18 02:10" --until "2018-06-18 03:00"
. Nu visas bara
logghändelser som inträffat under tidsspannet på 50 minuter mellan kl. 02:10 och
03:00. Detta går i sin tur att kombinera med exempelvis en specifik tjänst med
-u.
Följa loggar
Att kunna följa logghändelser i realtid är perfekt när vi laborerar med systemet
eller någon tjänst. För att hela tiden se de senaste logghändelserna på skärmen
efterhand som de sker använder vi -f för follow: journalctl -f
.
Även detta kan vi kombinera med andra flaggor. Exempelvis för att övervaka
SSH-demonen kan vi använda journalctl -u sshd -f
. Vi får då se till exempel
felaktiga inloggningsförsök i realtid.
[root@centos7 ~]# journalctl -u sshd -f
-- Logs begin at sön 2018-06-17 21:46:52 CEST. --
jun 17 21:46:56 centos7.nixnet.jke systemd[1]: Starting OpenSSH server daemon...
jun 17 21:46:56 centos7.nixnet.jke sshd[996]: Server listening on 0.0.0.0 port 22.
jun 17 21:46:56 centos7.nixnet.jke sshd[996]: Server listening on :: port 22.
jun 17 21:46:56 centos7.nixnet.jke systemd[1]: Started OpenSSH server daemon.
jun 17 21:47:16 centos7.nixnet.jke sshd[1458]: Accepted password for jake from 192.168.0.15 port 50760 ssh2
jun 18 02:19:58 centos7.nixnet.jke sshd[1982]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=red-dwarf.nixnet.jke user=jake
jun 18 02:20:00 centos7.nixnet.jke sshd[1982]: Failed password for jake from 192.168.0.15 port 54004 ssh2
jun 18 02:20:00 centos7.nixnet.jke sshd[1982]: Failed password for jake from 192.168.0.15 port 54004 ssh2
jun 18 02:20:01 centos7.nixnet.jke sshd[1982]: Failed password for jake from 192.168.0.15 port 54004 ssh2
jun 18 02:20:01 centos7.nixnet.jke sshd[1982]: Connection closed by 192.168.0.15 port 54004 [preauth]
Konfigurera journald
Systemd-demonen som sköter om loggarna heter journald och konfigureras i filen
/etc/systemd/journald.conf. För att se vad som kan ändras och konfigureras i
denna filen finns några exempel redan i filen. För att bättre förstå vad som går
att konfigurera rekommenderar jag dig att läsa manualen för filen
journald.conf med kommandot man journald.conf
.
Vidare läsning
För ytterligare exempel på hur det går att sortera loggarna med
journalctl
-verktyget, rekommenderar jag manualen med man journalctl
.
Tyckte du om den här artikeln? Då kanske du även tycker om någon av våra böcker.
Relaterat
-
Docker Desktop för Linux är här
Nu finns Docker Desktop även för Linux. Precis som Docker Desktop för macOS och Windows, finns även Kubernetes inkluderat i Linux-versionen. Man använder även ett VM för att köra containrarna.
-
Hårda och mjuka länkar i Linux
Hårda länkar är filnamn som pekar på en inode. Mjuka länkar är en speciell filtyp som pekar på hårda länkar, eller andra mjuk läknar. En inode i sin tur innehåller metadata om filen, samt information om var den faktiska datan finns lagrad på disken.
-
Drifta din egen molnlagring med Seafile
Seafile är ett program med öppen källkod för att synkronisera och lagra filer. Det kan liknas med ett privat Dropbox. Seafile har både en webbklient och klienter för Linux, Windows, macOS, Android och iPad/iPhone.
-
QCAD – ett prisvänligt CAD-program
AutoCAD är det mest populära och välkända CAD-programmet, men det har en stor prislapp. Cirka 21 700 kr inklusive moms per år. Men det finns alternativ. QCAD är ett av dem och kostar cirka 430 kr i engångssumma.
-
Blandade säkerhetstips
Här hittar du alla artiklarna i serien Blandade säkerhetstips. Listan fylls på efterhand som fler artiklar skrivs. Tipsen i denna artikelserie gäller främst för Linux och andra Unixsystem.
Senaste nyheterna och inläggen
-
Docker Desktop för Linux är här
Nu finns Docker Desktop även för Linux. Precis som Docker Desktop för macOS och Windows, finns även Kubernetes inkluderat i Linux-versionen. Man använder även ett VM för att köra containrarna.
-
Fortsatt låga IPv6-siffror i Sverige
Det är fortfarande knappt fem procent av internetanvändarna som har tillgång till IPv6. Det visar Post- och telestyrelsens senaste kartläggning. Samtidigt ökar andelen internetoperatörer som använder adressöversättning.
-
Hårda och mjuka länkar i Linux
Hårda länkar är filnamn som pekar på en inode. Mjuka länkar är en speciell filtyp som pekar på hårda länkar, eller andra mjuk läknar. En inode i sin tur innehåller metadata om filen, samt information om var den faktiska datan finns lagrad på disken.
-
Drifta din egen molnlagring med Seafile
Seafile är ett program med öppen källkod för att synkronisera och lagra filer. Det kan liknas med ett privat Dropbox. Seafile har både en webbklient och klienter för Linux, Windows, macOS, Android och iPad/iPhone.
CyberInfo Sverige är ett IT- och medieföretag i nordvästra Skåne som tillhandahåller böcker, utbildningar, nyheter och konsulttjänster inom Linux, säkerhet och programmering.
CyberInfo Sverige är godkänd för F-skatt, är momsregistrerat och innehar
utgivningsbevis för webbplatsen www.cyberinfo.se.