1,731 22/03/2026 07/04/2026 3 min

La gestione dei log è un aspetto cruciale per la manutenzione e la sicurezza dei sistemi Linux. Due dei principali sistemi di logging sono systemd-journald e syslog. Entrambi hanno le loro peculiarità e vantaggi, ma la scelta tra i due può influenzare significativamente la tua esperienza di amministrazione.

Prerequisiti

  • Un sistema Linux con systemd installato (la maggior parte delle distribuzioni moderne lo utilizza).
  • Accesso come utente con privilegi di root.
  • Conoscenze di base sulla gestione dei log.

Systemd-journald vs Syslog: Un confronto diretto

Il primo passo per comprendere quale sistema utilizzare è esplorare le caratteristiche e i vantaggi di ciascuno.

Systemd-journald

  • Struttura binaria: i log vengono memorizzati in un formato binario, consentendo una gestione più efficiente e un accesso veloce.
  • Filtraggio avanzato: offre la possibilità di filtrare i log per unità, priorità e altri parametri.
  • Accesso centralizzato: i log possono essere visualizzati da un unico strumento, journalctl.

Syslog

  • Formato testuale: i log sono memorizzati in formato testo semplice, facilitando la lettura e la manipolazione con strumenti comuni.
  • Compatibilità: è uno standard de facto per la registrazione su molti sistemi, rendendolo più familiare per molti amministratori.
  • Configurabilità: offre ampie opzioni di configurazione e integrazione con altri strumenti.

Quando scegliere systemd-journald

Se il tuo ambiente utilizza principalmente systemd e desideri un accesso centralizzato ai log, systemd-journald è la scelta ideale. Le sue capacità di filtraggio e ricerca delle informazioni lo rendono perfetto per la diagnostica rapida.

Quando scegliere Syslog

Se lavori in un contesto in cui la compatibilità e la familiarità sono fondamentali, oppure se hai già in uso strumenti basati su syslog, allora quest'ultimo potrebbe risultare più vantaggioso. È anche preferito in ambienti dove è necessario integrare vari sistemi di logging.

Configurazione di base dei log

Per illustrare le differenze nella configurazione tra i due, vediamo come impostare un semplice logging sia con systemd-journald che con syslog.

Configurazione di systemd-journald

Per configurare systemd-journald, puoi modificare il file di configurazione:

/etc/systemd/journald.conf

Dove puoi impostare opzioni come:

Storage=persistent
Compress=yes

Per applicare le modifiche, riavvia il servizio:

systemctl restart systemd-journald

Configurazione di Syslog

Per syslog, puoi modificare il file di configurazione comune:

/etc/rsyslog.conf

Puoi specificare le destinazioni e i livelli di log, ad esempio:

*.info;mail.none;authpriv.none;cron.none  /var/log/messages

Per applicare le modifiche, riavvia il servizio:

systemctl restart rsyslog

Verifica finale

Per verificare che i log funzionino correttamente, usa i seguenti comandi:

  • Per systemd-journald:
    journalctl -n 50
  • Per syslog:
    tail -n 50 /var/log/messages

Troubleshooting

Nonostante la configurazione possa sembrare corretta, possono verificarsi errori. Ecco tre problemi comuni:

  1. Messaggio: No journal files found.
    Cause: Nessun log registrato.
    Fix: Assicurati che il servizio systemd-journald sia attivo e funzionante.
  2. Messaggio: Could not open file /var/log/messages: Permission denied
    Cause: Permessi sul file di log.
    Fix: Controlla i permessi del file e assicurati che il servizio syslog abbia accesso.
  3. Messaggio: Service not active.
    Cause: Il servizio syslog o journald non è avviato.
    Fix: Avvia il servizio con systemctl start rsyslog o systemctl start systemd-journald.

Conclusione

La scelta tra systemd-journald e syslog dipende principalmente dal contesto in cui operi e dai requisiti specifici del tuo ambiente. Mentre systemd-journald offre funzionalità moderne e potenti, syslog rimane un'opzione valida per la sua compatibilità e semplicità. Dopo aver valutato i tuoi bisogni, puoi prendere una decisione consapevole su quale sistema di logging adottare.