Smartmontools configurazione
E' possibile monitorrare lo stato di salute di un hard disk e farsi inviare una mail quando c'è una predizione di failure.
Installazione pacchetto
sudo apt-get install smartmontools
Verifica compatibilità dischi
Per verificare la compatibilità con SMART
- di un hdd ATA:
sudo smartctl -i /dev/hda
- di un HDD SATA
sudo smartctl -i -d ata /dev/sda
- di un HDD SCSI
sudo smartctl -i -d scsi /dev/sda
Configurazione di smartd
Il demone smartd controlla i dischi in background, ed avverte in caso di problemi.
- Attivazione
Modifica default:
sudo sed -i 's/^#start_smartd=yes$/start_smartd=yes/' /etc/default/smartmontools
- Abilitazione del controllo dei dischi con invio mail di test:
sudo sed -i 's/^DEVICESCAN/#DEVICESCAN/' /etc/smartd.conf
Aggiungere una riga per ogni disco del tipo:
cat | sudo tee -a /etc/smartd.conf > /dev/null <<EOFile
/dev/sda -a \
-d ata \
-m gabriele.vivinetto@rvmgroup.it \
-M test \
-M daily \
-M exec /usr/share/smartmontools/smartd-runner
/dev/sdb -a \
-d ata \
-m gabriele.vivinetto@rvmgroup.it \
-M test \
-M daily \
-M exec /usr/share/smartmontools/smartd-runner
EOFile
NOTA: sarebbe possibile anche far eseguiore i test come dai commenti nel file di config, ma si otterrebbe una riga più lunga di 128 caratteri, che darebbe un errore.
Avviare il demone:
sudo invoke-rc.d smartmontools restart
Verificare la corretta ricezione dell'email.
Rimuovere quindi l'opzione -M test:
sudo /etc/init.d/smartmontools stop
Sostituire le righe precedenti con
sudoedit /etc/smartd.conf
... /dev/sda -a -d ata -m gabriele.vivinetto@rvmgroup.it -M daily -M exec /usr/share/smartmontools/smartd-runner /dev/sdb -a -d ata -m gabriele.vivinetto@rvmgroup.it -M daily -M exec /usr/share/smartmontools/smartd-runner
In pratica giornalmente (-M daily) viene eseguito lo script smartd-runner (-M exec /usr/share/smartmontools/smartd-runner), che si preoccupa di eseguire tutto quanto contenuto in /etc/smartmontools/run.d/, tra cui lo script 10mail, che invia la mail.
Riavviare il demone:
sudo /etc/init.d/smartmontools restart