Per molti anni i log sono stati gestiti da un'utilità chiamata syslogd. La maggior parte dei sistemi operativi basati su GNU/Linux è passata a systemd,
che usa **journalctl** per gestire i log di sistema.
## Leggere i log
Solo gli utenti che appartengono ai gruppi `adm` o `systemd-journal` possono leggere i log di sistema.
Digitare il seguente comando:
```bash
groups
```
Se non viene visualizzato "adm" oppure "systemd-journal" nell'output, aggiungere l'utente al gruppo col comando:
```bash
sudo adduser $USER adm
```
Sarà necessario riavviare la sessione affinché questa modifica abbia effetto.
## Journald
journald è un demone che raccoglie e scrive tutti i log del sistema nel file journal.
Il suo file di configurazione predefinito si trova in: `/etc/systemd/journald.conf`. Eccone un esempio:
```bash
# See journald.conf(5) for details.
[Journal]
#Storage=auto
#Compress=yes
#Seal=yes
#SplitMode=uid
#SyncIntervalSec=5m
#RateLimitInterval=30s
#RateLimitBurst=1000
#SystemMaxUse=
#SystemKeepFree=
#SystemMaxFileSize=
#SystemMaxFiles=100
#RuntimeMaxUse=
#RuntimeKeepFree=
#RuntimeMaxFileSize=
#RuntimeMaxFiles=100
#MaxRetentionSec=
#MaxFileSec=1month
#ForwardToSyslog=yes
#ForwardToKMsg=no
#ForwardToConsole=no
#ForwardToWall=yes
#TTYPath=/dev/console
#MaxLevelStore=debug
#MaxLevelSyslog=debug
#MaxLevelKMsg=notice
#MaxLevelConsole=info
#MaxLevelWall=emerg
```
Un certo numero di distribuzioni non consentono l'archiviazione permanente dei log sul disco per impostazione predefinita.
È possibile abilitare questa opzione impostando "Storage" su "persistent" come mostrato di seguito. Questo creerà la directory `/var/log/journal` e tutti i file journal saranno memorizzati
dove l'opzione `-x` indica *show-priority*. Con questa opzione abilitata, il comando journalctl mostra anche il livello di priorità dei messaggi di log insieme al loro contenuto.
I messaggi possono essere contrassegnati con diverse priorità, come emergenza, avviso, errore, avviso, informazione, ecc.
L'opzione `-e` indica *pager-end*. Con questa opzione abilitata, il comando journalctl visualizza l'output dell'ultimo messaggio di log e posiziona il cursore all'ultima riga,
consentendo di scorrere rapidamente fino all'ultimo messaggio di log senza dover scorrere l'intero registro.