«

»

Zář 19

Spravovanie logov pomocou journald

systemd-logoJournald je logovací systém, ktorý je súčasťou systemd. A práve preto, že sa v ňom ukladajú logy, môže spôsobiť nejeden problém. Ale našťastie existuje jednoduchý spôsob ako sa týmto problémom vyhnúť. V tomto článku si povieme ako. Samozrejme si zopakujeme i základné informácie ako zistiť potrebné informácie o logoch.
Manuálová stránka pre systemd, journalctl, journald.conf:

man systemd
man journalctl
man journald.conf

 

Konfiguračný súbor sa nachádza v /etc/systemd/journald.conf.
Priečinok s logmi sa nachádza v /var/log/journal/. Nie je problém logy vymazať manuálne. Na úkon sú však potrebné správcovské práva.

 

Zistenie veľkosti journald:

journalctl --disk-usage

 

Výpis všetkých sedení:

journalctl --list-boots

 

Výpis logov journald:

journalctl -xb

 

Výpis logov bez stránkovania:

journalctl -xb --no-pager

 

Výpis kompletných logov:

journalctl -o verbose -xb

 

Výpis logov z dnešného dňa:

journalctl --since=today

 

Výpis logov zo včerajšieho dňa:

journalctl --since=yesterday

 

Výpis logov pre presne stanovené dni:

journalctl --since=-3d --until=-1d

 

Výpis logov pre užívateľa:

journalctl -b _UID=1000

 

Výpis logov pre konkrétny program (v tomto prípade pacman):

journalctl -b -u pacman

 

Výpis kompletných logov pre konkrétny program:

journalctl -o verbose -xb -u pacman

 

Výpis logov pre konkrétny disk či oddiel (v tomto prípade je to sda):

journalctl /dev/sda

 

Vyčistenie archívnych logov:

journalctl --vacuum-size=50M

 

Obmedzenie žurnálovacej veľkosti (čiže logovania):

Odporúča sa limit nastaviť na cca 10% systémovej oblasti (/root).

 

Pomocou nejakého textového editoru si otvoríme konfiguračný súbor:

sudo pluma /etc/systemd/journald.conf

 

Vyhľadáme si potrebné parametre. Najprv spred nich odstránime mriežku #. Následne doplníme zvolenú hodnotu. Uvedené sú len ukážkové. Môžeme zvoliť vlastné. No musíme dávať pozor na príliš nízku hodnotu.

SystemMaxUse=50M
SystemMaxFileSize=10M
MaxRetentionSec=3month
MaxFileSec=1week
ForwardToSyslog=no

SystemMaxUse=50M nastavuje maximálnu veľkosť žurnálu
SystemMaxFiles= nastavuje koľko súborov sa má uchovávať
SystemMaxFileSize=10M nastavuje maximálnu veľkosť jednotlivých súborov žurnálu
MaxRetentionSec=3month nastavuje maximálne obdobie, počas ktorého sa ukladajú záznamy. Predvolená hodnota je 0, ktorá parameter zakazuje. Ďalšie dostupné parametre sú year pre rok, month pre mesiac, week pre týždeň, day pre deň.
MaxFileSec=1week nastavuje maximálne obdobie ukladania záznamov do jedného súboru. Predvolená hodnota je jeden mesiac. Dostupné parametre sú year pre rok, month pre mesiac, week pre týždeň, day pre deň.
ForwardToSyslog=no nastavuje odovzdávanie logov do syslog. Hodnota je boolean. Táto hodnota má dve možnosti nastavenie. Ak sa povolí pomocou yes, vtedy sa obsah logov načítava so soketu. Druhá metóda, pomocou no, umožňuje načítavanie logov so súborov ako je tomu pri journalctl. Vďaka tomu nedochádza ku skenovaniu logov pri štarte systému, ale tesne po ňom. Vyžaduje povolenie ukladania logov, takže so Storage=none nebude fungovať. Poznáme aj ForwardToKMsg=, ForwardToConsole= a ForwardToWall=. „Logovanie do syslog“ nemá žiaden efekt. Jediná hodnota, ktorá je prednastavená, je povolenie ForwardToWall=. Tieto hodnoty sa nastavujú úpravou kernelu. Viac informácii v manuálovej stránke.

 

O autorovi

lombardo1981

Ja som proste ja. Baba zamilovaná do Archu, kyberpunku, spevu a Slovenských čuvačov.

2 comments

  1. vxmery
    Firefox 48.0 Ubuntu x64

    Keď neutneme max. veľkosť žurnálu v konfiguráku, bude nám botnať pokiaľ nezaplní partíciu?

    1. lombardo1981
      Pale Moon 26.4.1 GNU/Linux x64

      Zákonite nie. Ale môže nadobudnúť pomerne vysoké hodnoty. Ono to dosť závisí od častosti spúšťania PC či od veľkosti partície. Pokiaľ viem, tak je nastavený práve na tých 10%, lenže už bola verzia systemdu s chybou, ktorá toto nastavenie ignorovala.
      Čo ťa zákonite čaká, je spomalenie bootovania.

%d bloggers like this: