SMART tools zijn zeer handig om een continu (24x7) harddisk te monitoren.
Dit is niet mogelijk met de Linksys NSLU2, omdat de SMART interface niet via USB is geimplementeerd. Het is alleen mogelijk met direct aangesloten disken via SATA of IDE.
De installatie van SMART onder Ubuntu is te vinden in: Installeren van Ubuntu 8.04 LTS Server
Ook moet het mogelijk zijn om mail te versturen, zie voor mail installatie: Versturen van mail vanaf de Ubuntu 8.04 LTS server
Na installatie moet de smartd geconfigureerd worden. Open de volgende file en haal het # voor start_smartd weg:
$ vi /etc/default/smartmontools
# uncomment to start smartd on system startup
start_smartd=yes
Open nu de /etc/smartd.conf file om smard te configureren:
$ vi /etc/smartd.conf
# Alle device scans uithashen
/dev/sda -d ata -n standby -H -l error -l selftest -s (O/../../6/07|L/../../5/00|S/../../1|2|3|4|5/08) -m root -M test -M exec /usr/local/sbin/smart_error_mail
O/../../6/07 -> Offline Immediate test op zaterdag om 7:00 's-morgens
L/../../5/00 -> Long Selftest op vrijdag om 12:00 's-nachts
S/../../1|2|3|4|5/08 -> Short Selfttest elke werkdag om 8:00 's-morgens
Nog meer opties:
- -t -> Raporteer als een usage of een prefail attribute is gewijzigd.
- -f -> Raporteer als een failure of een usage attribute is gewijzigd.
Zie voor meer configuratie mogelijkheden met smartd.conf op de man page: linux.die.net/man/5/smartd.conf
Maak nu het script /usr/local/sbin/smart_error_mail aan:
$ vi /usr/local/sbin/smart_error_mail
#!/bin/sh
LOGFILE="/tmp/smartd.log"
echo -e "$(date)\n\n$SMARTD_MESSAGE\n" > "$LOGFILE"
echo "----------------------SMARTCTL OUTPUT----------------------------------------------" >> "$LOGFILE"
smartctl -a /dev/sda >> "$LOGFILE"
mail -s "Harddisk status Rietveld NAS" arjan@gmail.com < $LOGFILE_
Maak dit script executeerbaar met:
$ chmod a+x /usr/local/sbin/smart_error_mail
SMART daemon starten
Met het volgende commando kun je de SMART service starten en krijg je direct een testmailtje met de huidige status:
$ /etc/init.d/smartmontools restart
Shell commands
Harddisk tests starten
Je kunt ook een long selftest handmatig starten:
$ smartctl -t long /dev/sda
smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".
Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.
Testing has begun.
Please wait 41 minutes for test to complete.
Test will complete after Sat May 16 18:34:36 2009
Use smartctl -X to abort test.
De testresultaten zijn na 41 minuten op te vragen met:
$ smartctl -l selftest /dev/sda
Of de volgende korte test:
$ smartctl -t short /dev/sda
Of de offline test (er kan nog gewoon doorgewerkt worden tijdens de test):
$ smartctl -t offline /dev/sda
Ander tool om harddisk temperatuur op te vragen
Met hddtemp kan de temperatuur van de harddisk opgevraagd worden. Man page hddtemp: linux.die.net/man/8/hddtemp
hddtemp kan als daemon gestart worden om bijvoorbeeld in de syslog het temperatuurverloop te loggen. Het is eenvoudig te installeren met:
$ apt-get install hddtemp
De temperatuur is op te vragen met:
$ hddtemp /dev/sda
/dev/sda: WDC WD1600AAJS-00L7A0: 37°C