Mac OS X e i log di sistema

Mattepuffo's logo
Mac OS X e i log di sistema

Mac OS X e i log di sistema

I log di sistema mostrano moltissimi eventi durante il funzionamento di un sistema operativo: modifiche al sistema, eventi di rete, ecc.

Nel Mac l'evento logger di sistema principale è Syslog, che in verità è un componente standard di Unix e derivati.

Syslog è il demone che viene lanciato all'avvio del sistema dal punto /Sistema/Libreria/StartupItems/SystemLog.

Il file di configurazione principale è /etc/syslog.conf e viene letto all'avvio del demone e configura come i processi del demone ricevono e inoltrano i messaggi.

Syslog analizza i messaggi in arrivo in base al file di configurazione e realizza una o più di queste azioni:

  • aggiunge il messaggio al file specificato
  • invia il messaggio a /dev/console
  • inoltra il messaggio a un demone syslog in esecuzione su un host differente
  • invia il messaggio all schermo

Possiamo modificare il file di config in base alle nostre esigenze.

Syslog infatti è configurato per scrivere la maggior parte dei messaggi in /var/log/system.log.

Possiamo però separare alcuni log per rendere la lettura più semplice.

Io ho separato i log di ssh.

Prima di tutto facciamo una copia del file:

sudo cp /etc/syslog.conf /etc/syslog.conf.bak

Passiamo adesso alla modifica di alcune voci di /etc/sshd_config, sempre tramite sudo:

sudo nano /etc/sshd_config

Dobbiamo cambiare il valore di SyslogFacility da AUTH a LOCAL7 e eventualmente rimuovere il carattere # da inizio riga.

A questo punto apriamo il file /etc/syslog.conf e aggiungiamo questa riga:

local7.* /var/log/sshd.log

Syslog non può creare file nella directory /var/log e quindi dovremmo crearlo a mano:

sudo touch /var/log/sshd.log

sudo chmod 640 /var/log/sshd.log

sudo kill -HUP '/bin/cat/var/run/syslog.pid'

A questo punto possiamo esaminare il log attraverso Console o Terminale.

Se vogliamo separare i log di sudo dobbiamo fare lo stesso procedimento, ma in /etc/syslog.conf dobbiamo aggiungere la riga seguente:

local2.* /var/log/sudo.log

Ovviamente dobbiamo creare il log di sudi, ecc.

Ciao!


Condividi

Commentami!