Desenvolvimento

8 mar, 2018

Limpando o systemd journal

Publicidade

Em qualquer servidor, os logs podem começar a se somar e gastar uma quantidade considerável de espaço no disco. O systemd os armazena convenientemente em /var/log/journal e possui um comando systemctl para ajudar a desmarca-los.

Pegue este exemplo:

$ du -hs /var/log/journal/
4.1G	/var/log/journal/

4,1 GB de arquivos de diários, com o mais antigo datando de mais de dois meses.

$ ls -lath /var/log/journal/*/ | tail -n 2
-rw-r-x---+ 1 root systemd-journal 8.0M Dec 24 05:15 user-xxx.journal

Nesse servidor, eu realmente não preciso de muitos logs, então vamos limpá-los. Geralmente, existem duas maneiras de fazer isso.

Limpe systemd journals de mais de X dias

A primeira é baseada no tempo, limpando todo o suporte de há mais de, digamos, 10 dias.

$ journalctl --vacuum-time=10d
...
Vacuuming done, freed 2.3G of archived journals on disk.

Alternativamente, você pode limitar seu tamanho total.

Limpe systemd journals se eles excederem X de armazenamento

Este exemplo manterá 2GB de logs, limpando tudo o que excede isso.

$ journalctl --vacuum-size=2G
...
Vacuuming done, freed 720.0M of archived journals on disk.

Afinal, seu /var/log/journal deve ser muito menor.

$ du -hs /var/log/journal
1.1G	/var/log/journal

Isso poupa alguns GBs no disco!

***

Mattias Geniar faz parte do time de colunistas internacionais do iMasters. A tradução do artigo é feita pela Redação iMasters, com autorização do autor, e você pode acompanhar o artigo em inglês no link: https://ma.ttias.be/clear-systemd-journal/