Esiste una simpatica utility per monitorare temperatura hard disk. La maggior parte dei computer più moderni, x86, dispongono di dischi rigidi con S.M.A.R.T. (Self-Monitoring, Analysis, and Reporting Technology). Si tratta di un sistema di monitoraggio per trovare e registrare indicatori di affidabilità sul disco rigido, un tentativo di riuscire a prevenire eventuali danni.
=> Lo strumento hddtemp rende in ogni momento la temperatura del disco rigido leggendo le informazioni da S.M.A.R.T., sui dischi rigidi che supportano questa funzione, permettendo di monitorare temperatura hard disk. Solo i moderni dischi rigidi dispongono di un sensore della temperatura. Hddtemp supporta la lettura delle informazioni S.M.A.R.T. anche dai driver SCSI. Hddtemp può funzionare anche attraverso una semplice riga di comando per ottenere le informazioni utili.
Installare hddtemp
Per installare hddtemp su Debian / Ubuntu Linux, digitare:
$ sudo apt-get install hddtemp
È anche possibile eseguire l’installazione a partire dal codice. Scaricare il codice da qui.
$ wget http://download.savannah.nongnu.org/releases/hddtemp/hddtemp-0.3-beta15.tar.bz2
Untar e installare hddtemp:
$ tar -jxvf hddtemp-0.3-beta15.tar.bz2
$ cd hddtemp-0.3-beta15
$ ./configure
$ make
$ sudo make install
Installare il database delle temperature del disco rigido nella directory /usr/share/misc or /etc :
$ cd /usr/share/misc
# wget http://download.savannah.nongnu.org/releases/hddtemp/hddtemp.db
Come posso monitorare la temperatura del disco rigido?
Per controllare la temperatura, digitare il seguente comando for /dev/sda:
# hddtemp /dev/sda
Ecco come si presenterà:
/dev/sda: WDC WD2500YS-01SHB1: 25°C
La temperatura indicata qua sopra è di 25 gradi: se fosse superiore ai 60, bisognerebbe immediatamente valutare le opzioni di raffreddamento.
Come trovare le temperature sui dischi rigidi dei server?
hddtemp è collegato di default sulla porta TCP/IP 7634. È necessario eseguire hddtemp in modalità daemon. Effettuare il login nel box remoto ed eseguire nel modo seguente: /dev/sda, /dev/sdb, /dev/sdc, and /dev/sdd:
# hddtemp -d /dev/sd[abcd]
Usare il comando telnet or nc / netcat per ottenere la temperatura da un disco remoto:
$ telnet remotebox 7634
o
$ nc 192.168.1.100 7634
Spegnere il proprio computer Linux se la temperatura è >= 55
Per spegnere il proprio computer, inserire la seguente riga di comanda via cron tab (cron job) file:
[ $(hddtemp /dev/sda | awk '{ print $4}' | awk -F '°' '{ print $1}') -ge 55 ] && /sbin/shutdown -h 0 || :
Esempio di script shell per lo spegnimento se la temperatura è >= 55°C (download link):
#!/bin/bash HDDS="/dev/sda /dev/sdb /dev/sdc" HDT=/usr/sbin/hddtemp LOG=/usr/bin/logger DOWN=/sbin/shutdown ALERT_LEVEL=55 for disk in $HDDS do if [ -b $disk ]; then HDTEMP=$($HDT $disk | awk '{ print $4}' | awk -F '°' '{ print $1}') if [ $HDTEMP -ge $ALERT_LEVEL ]; then $LOG "System going down as hard disk : $disk temperature $HDTEMP°C crossed its limit" sync;sync $DOWN -h 0 fi fi done
Smartctl Utility
Se avete installato le smartctl utility , provate ad ottenere le informazioni sulla temperatura in questo modo:
# smartctl -d ata -A /dev/sda | grep -i temperature
Come si presenterà:
194 Temperature_Celsius 0x0022 122 095 000 Old_age Always - 28
Impostare ALERT_LEVEL a seconda delle proprie necessità. Prendere nota del manuale del proprio disco rigido per le informazioni sulla temperatura di lavoro. Ecco le linee guida generali sulle temperature (estratte dalla pagina Seagate SV35.2 Series Hard Drives Web Page):
Attività | 0 – 60 gradi C |
Non operatività | -40 – 70 gradi C |
Massimo cambiamento di temperatura | 20 gradi C per ora |
Massimo cambiamento di temperatura in regime di non operatività | 30 gradi C per ora |
Massima temperatura per l’operatività | 69 gradi C |
Una nota per Windows XP/Vista/ Utenti server
hddtemp è un programma solo UNIX / Linux . Puoi scaricare la versione prova di hddtemp qui.