View previous topic :: View next topic |
Author |
Message |
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Wed Aug 18, 2004 9:02 pm Post subject: [HOWTO] monitorare l'hard disk con SMART - UPDATE! |
|
|
UPDATE: la versione più aggiornata di questo howto si trova [url=http://gentoo-wiki.com/HOWTO_Monitor_your_hard_disk(s)_with_smartmontools]qui[/url]
INTRODUZIONE
Scopo di questa guida è quello di sfruttare la tecnologia SMART (di cui oramai praticamente tutti gli hard disk sono dotati) per assicurarsi che il proprio disco non ci stia preparando qualche scherzetto di cattivo gusto...
In poche parole gli hard disk dotati di SMART (Self-Monitoring, Analysis and Reporting Technology) sono in grado di monitorare continuativamente il proprio stato di salute per segnalare all'utente eventuali anomalie, e in molti casi permettono anche di eseguire dei test specifici per meglio rilevare malfunzionamenti e simili.
Prima di proseguire, comunque, mi sento in dovere di dire una cosa, forse scontata ma non per questo meno importante: effettuate sempre e comunque periodici backup! Lo SMART è sì molto efficace, ma non per questo garantisce fornisce sempre una diagnosi corretta dello stato di salute del disco. Non solo: spesso gli hard disk muoiono in modo improvviso, ragion per cui non sempre è possibile cavarsela all'ultimo momento, e questo anche se SMART ci ha avvisato tempestivamente e correttamente di ciò che sarebbe presto accaduto.
CONTROLLARE L'HARD DISK SUBITO
Detto questo, passiamo pure all'azione... per prima cosa occorre assicurarsi che SMART sia abilitato da BIOS. Ad esempio io nella sezione BIOS Features Setup ho S.M.A.R.T. for Hard Disk: Enabled.
Quindi installiamo pure il pacchetto smartmontool:
Code: | # emerge smartmontools |
A questo punto occorre appurare che il proprio disco supporti SMART e che tale funzione sia abilitata (bisogna cioè verificare che SMART support is: Enabled):
Code: | # smartctl -i /dev/hda |
Ora visualizziamo lo SMART Health Status del disco:
Code: | # smartctl -H /dev/hda |
Se leggiamo PASSED possiamo proseguire tranquillamente. Nella malaugurata ipotesi che leggiamo FAILED effettua immediatamente il backup dei dati importanti!!! Il disco infatti o si è già rotto o è previsto che si rompa entro le prossime 24 ore.
Dando quindi per scontato che abbiamo ottenuto PASSED o comunque messo al sicuro i nostri dati possiamo ora visualizzare lo SMART Error Log, cioè la lista di errori rilevati da SMART durante il funzionamento del disco:
Code: | # smartctl -l error /dev/hda |
Se leggiamo No Errors Logged allora tutto ok. Nel caso in cui ci fosse solo una manciata di errori (e magari neanche tanto recenti e/o ricorrenti) non bisogna preoccuparsi eccessivamente. Occorre invece allarmarsi quando gli errori cominciano a presentarsi in gran numero.
Visualizzare lo SMART Health Status e lo SMART Error Log di per sè non permette di avere la garanzia che tutto vada e sia andato per il verso giusto. Consiglio invece di eseguire anche una serie di test specifici che, personalmente parlando, aiutano decisamente a dormire sonni più tranquilli in queste calde serate estive...
Ciascuno dei seguenti test può essere eseguito anche mentre si sta lavorando normalmente col proprio computer e non interferisce in alcun modo con il corretto funzionamento dello stesso. Qui mi limito a spiegare operativamente cosa occorra fare per avviarli correttamente e per visualizzare i risultati, per cui a chi vuole approfondire consiglio di andare qui e/o di leggere il manuale di smartctl (man smartctl).
Innanzitutto occorre controllare quali test sono supportati dal disco:
Code: | # smartctl -c /dev/hda |
In questo modo è anche possibile avere un'idea di quanto tempo è richiesto da ciascuno di essi.
Per prima cosa eseguiamo lo SMART Immediate Offline Test:
Code: | # smartctl -t offline /dev/hda |
A questo punto occorre solo pazientare. Nel mio caso il test ha rischiesto 52 minuti circa, infatti:
Please wait 3120 seconds for test to complete.
Test will complete after Wed Aug 18 23:21:16 2004
Se vengono rilevati errori, essi sono riportati nello SMART Error Log (per chi se lo fosse dimenticato, il modo con cui poterlo visualizzare è riportato poco sopra).
A questo punto eseguiamo a scelta lo SMART Short Self Test *o* lo SMART Extended Self Test. Entrambi controllano le prestazioni elettriche e meccaniche del disco (nonchè le sue prestazioni in lettura) ma il secondo è più approfondito del primo.
Code: | # smartctl -t short /dev/hda
# smartctl -t long /dev/hda |
I risultati di entrambi i test vengono riportati nel Self Test Error Log, che può essere visualizzato così:
Code: | # smartctl -l selftest /dev/hda |
Alcuni hard disk supportano anche l'esecuzione dello SMART Conveyance Self Test (pensato per rilevare anomalie dovute al trasporto del disco). Per avviarlo:
Code: | # smartctl -t conveyance /dev/hda |
Anche i risultati di quest'ultimo test sono riportati nel Self Test Error Log.
MONITORARE AUTOMATICAMENTE L'HARD DISK
Una volta presa una certa familiarità con i concetti base fin qui descritti non sarà affatto difficile configurare a dovere il demone smartd, cioè quel tool che si occupa di monitorare e testare periodicamente il nostro hard disk senza il minimo intervento da parte nostra: l'unica cose che dobbiamo necessariamente fare da soli, infatti, sta semplicemente nel configurare il demone prima di eseguirlo.
Il file di configurazione è /etc/smartd.conf (se non esiste dobbiamo ovviamente crearlo noi).
Supponiamo di avere un solo hard disk (/dev/hda) e di voler eseguire tutti i test fin qui elencati ogni venerdì nell'arco di quattro ore (dalle 11:00 alle 15:00); nel caso in cui il demone rilevasse qualche anomalia esso, inoltre, dovrà scrivere in un file di log il problema riscontrato e poi spegnere automaticamente il computer (per evitare che, in nostra assenza, l'hard disk continui stupidamente a lavorare con i nostri preziosissimi dati a rischio). In questo caso il file di configurazione consisterà in una sola linea (occorre spezzarla con delle "\" se è troppo lunga e/o vogliamo che sia più leggibile):
Code: | /dev/hda \
-H \
-l error -l selftest \
-s (O/../../5/11|L/../../5/13|C/../../5/15) \
-m ThisIsNotUsed -M exec /percorso/dello/script |
Il contenuto dello script sarà invece:
Code: | #!/bin/bash
FILE="/percorso/del/file/di/log"
echo "$SMARTD_MESSAGE" > "$FILE"
halt |
Questi, in sostanza, sono il mio file di configurazione e il mio script. A tutti coloro (sicuramente molti) che vorranno modificarli ed adattarli alle proprie esigenze o semplicemente vorranno comprendere meglio il significato di ciascun parametro non posso che consigliare la lettura del manuale (man smartd.conf).
Ultima cosa: per verificare di non aver commesso errori di sorta consiglio di aggiungere l'opzione -M test alla fine del file di configurazione, in modo tale che lo script venga eseguito all'avvio del demone (eventualmente commentare la linea dello script che contiene l'istruzione per far spegnere il computer).
Per eseguire il demone digitiamo:
Code: | # /etc/init.d/smartd start |
Se lo script non viene eseguito il file di log ovviamente non verrà creato... in questo caso controlliamo tutto nuovamente ed eventualmente leggiamo le ultime righe di /var/log/messages per individuare la causa del problema.
Quanto tutto sarà a posto digitiamo pure:
Code: | # rc-update add smartd default |
Il demone sarà avviato ogni volta all'accensione del computer. Il nostro hard disk, d'ora in poi, sarà più al sicuro.
Last edited by fctk on Sun Nov 14, 2004 6:01 pm; edited 3 times in total |
|
Back to top |
|
|
/dev/full n00b
Joined: 13 Aug 2004 Posts: 28 Location: /dev/null
|
Posted: Wed Aug 18, 2004 9:20 pm Post subject: Re: [HOWTO] monitorare l'hard disk con SMART |
|
|
Ne ho proprio bisogno
Grazie!
Ehm, pero': Quote: | A questo punto occorre appurare che il proprio disco supporti SMART e che tale funzione sia abilitata (bisogna cioè verificare che SMART support is: Enabled):
Code: | # smartctl -i /dev/hda |
| E se: Code: | SMART support is: Available - device has SMART capability.
SMART support is: Disabled |
Mi consiglia di usare l'opzione -s con argomento 'on' per abilitarlo... Ma se lo faccio... Code: | ERROR: smartctl requires a device name as the final command-line argument. |
|
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Wed Aug 18, 2004 9:34 pm Post subject: |
|
|
probabilmente hai dimenticato /dev/hda |
|
Back to top |
|
|
ballero n00b
Joined: 10 Jul 2004 Posts: 62
|
Posted: Wed Aug 18, 2004 9:42 pm Post subject: |
|
|
Lo SMART, devi prima attivarlo da bios della scheda madre |
|
Back to top |
|
|
/dev/full n00b
Joined: 13 Aug 2004 Posts: 28 Location: /dev/null
|
Posted: Wed Aug 18, 2004 10:06 pm Post subject: |
|
|
fctk wrote: | probabilmente hai dimenticato /dev/hda | Non c'avevo fatto caso
Grazie |
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Thu Aug 19, 2004 10:13 am Post subject: |
|
|
ballero wrote: | Lo SMART, devi prima attivarlo da bios della scheda madre |
non ci avevo pensato, è vero! aggiunto all'howto. grazie |
|
Back to top |
|
|
fedeliallalinea Administrator
Joined: 08 Mar 2003 Posts: 31265 Location: here
|
Posted: Thu Aug 19, 2004 12:27 pm Post subject: |
|
|
Bel howto. Aggiunto ai post utilissimi _________________ Questions are guaranteed in life; Answers aren't. |
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Thu Aug 19, 2004 12:46 pm Post subject: |
|
|
grazie! |
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Sat Aug 28, 2004 6:46 pm Post subject: |
|
|
aggiunta la sezione relativa al demone smartd!!! |
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Sun Sep 12, 2004 4:45 pm Post subject: |
|
|
completata la [url=http://gentoo-wiki.com/HOWTO_Monitor_your_hard_disk(s)_with_smartmontools]traduzione in inglese[/url] |
|
Back to top |
|
|
mrfree Veteran
Joined: 15 Mar 2003 Posts: 1303 Location: Europe.Italy.Sulmona
|
Posted: Tue Sep 28, 2004 10:58 am Post subject: |
|
|
Forse dovresti apportare qualche piccola modifica alla tua configurazione...
Utilizzo la versione attualmente stabile nel portage smartmontools-5.26 e:
- la direttiva -s non è più presente e quindi per schedulare i controlli bisognerebbe utilizzare un metodo alternativo (tipo cron immagino)
- per la direttiva -m, invece, è necessario specificare <nomailer> se si intende utilizzare exec in -M
Almeno il primo punto è stato anche segnalato nella sezione commenti del tuo articolo su gentoo-wiki
Nota: Per maggiori dettagli sulla schedulazione rimando al man di smartd (di default il demone si attiva ogni 30 minuti intervallo comunque configurabile)
Spero di esserti stato utile _________________ Please EU, pimp my country!
ICE: /etc/init.d/iptables panic |
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Tue Sep 28, 2004 12:48 pm Post subject: |
|
|
come la direttiva -s non c'è +? io continuo a vederla... http://smartmontools.sourceforge.net/man/smartd.conf.5.html
per quanto riguarda la -m ho chiesto nella mailing list del programma, e mi ha risposto direttamente l'autore... per cui boh... comunque anch'io ho avuto problemi con la 5.26 e sono passato alla versione testing che invece non me ne ha dati affatto... magari è quello |
|
Back to top |
|
|
mrfree Veteran
Joined: 15 Mar 2003 Posts: 1303 Location: Europe.Italy.Sulmona
|
Posted: Tue Sep 28, 2004 1:07 pm Post subject: |
|
|
effettivamente la 5.26 è datata 27 nov 2003 cmq in questa versione non c'è la direttiva -s (almeno dando man smartd.conf) per la -m l'utilizzo del <nomailer> è indicato nel manuale.
Di chiu' nin so'
Edit: Ho emerso la versione 5.30 in questa c'è la direttiva per lo scheduling _________________ Please EU, pimp my country!
ICE: /etc/init.d/iptables panic |
|
Back to top |
|
|
masterbrian Guru
Joined: 13 Feb 2004 Posts: 461
|
Posted: Tue Sep 28, 2004 5:10 pm Post subject: |
|
|
Bellissimo HOWTO e molto utile
Qui ha funzionato tutto al primo colpo tranne:
Code: | -s (O/../../5/11|L/../../5/13|C/../../5/15) \ | che ho dovuto cancellare dallo /etc/smartd.conf
Sembra che non sia supportato il -s Come descritto sopra |
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
Posted: Tue Sep 28, 2004 6:03 pm Post subject: |
|
|
prova ad emergere la versione testing come ha fatto mrfree... comunque se si rileva essere questo il problema appena posso aggiorno l'howto... |
|
Back to top |
|
|
lavish Bodhisattva
Joined: 13 Sep 2004 Posts: 4296
|
|
Back to top |
|
|
fctk Veteran
Joined: 28 Jan 2004 Posts: 1424 Location: Milan, Italy, EU
|
|
Back to top |
|
|
lavish Bodhisattva
Joined: 13 Sep 2004 Posts: 4296
|
Posted: Sun Nov 14, 2004 5:42 pm Post subject: |
|
|
@fctk : Grazie mille... proprio non avevo guardato nel posto + ovvio... Peccato cmq, poiche' con il modulo vecchio (deprecated ora, mi riferisco al modulo che faceva riconoscere l'hd sata come un ide) il supporto allo s.m.a.r.t. era completo
Grazie ancora e scusami _________________ minimalblue.com | secgroup.github.io/ |
|
Back to top |
|
|
khris81 Apprentice
Joined: 10 May 2005 Posts: 245
|
Posted: Wed Jun 22, 2005 10:21 pm Post subject: |
|
|
chris christian # smartctl -i /dev/sda
smartctl version 5.33 [i686-pc-linux-gnu] Copyright (C) 2002-4 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
Device: ATA WDC WD2000JD-00H Version: 08.0
SATA disks accessed via libata are not currently supported by
smartmontools. When libata is given an ATA pass-thru ioctl() then an
additional '-d libata' device type will be added to smartmontools.
come posso fare avendo un sata??? |
|
Back to top |
|
|
Ciccio Bueo l33t
Joined: 19 Oct 2004 Posts: 834 Location: Treviso
|
Posted: Sat Jul 23, 2005 4:47 pm Post subject: |
|
|
bel tip! ma non c'è un front-end, magari in gtk? non ho trovato nulla... sarebbe certamente più comodo l'utilizzo.... |
|
Back to top |
|
|
Flebool n00b
Joined: 13 Sep 2004 Posts: 26
|
Posted: Wed Aug 23, 2006 2:41 pm Post subject: |
|
|
ho seguito pedissequamente l'howto sul wiki riportato in link all'inizio del post..
Fino alla sezione " Automatically monitor your drive(s)", tutto funziona correttamente, non ho avuto problemi.
Ho una coppia di dischi sata, /dev/sda e /dev/sdb. è bastato aggiungere l'opzione -d ata e smartctl è andato spedito.
la versione di smartmontools è la 5.36
ho impostato il file /etc/smartd.conf come segue:
Code: |
DEVICESCAN
/dev/sda -d ata\
-H \
-l error -l selftest \
-m notused -M exec /etc/smartd.sh -M test
|
ho poi proceduto con:
Code: |
/etc/init.d/smartd start
* Caching service dependencies ... [ ok ]
* Starting S.M.A.R.T. monitoring daemon ... [ !! ]
|
il demone fallisce, e esce subito.risulta infatti:
#tail -13 /var/log/messages
Code: |
Aug 23 16:25:48 crap smartd[15099]: smartd version 5.36 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Aug 23 16:25:48 crap smartd[15099]: Home page is http://smartmontools.sourceforge.net/
Aug 23 16:25:48 crap smartd[15099]: Opened configuration file /etc/smartd.conf
Aug 23 16:25:48 crap smartd[15099]: Drive: DEVICESCAN, implied '-a' Directive on line 23 of file /etc/smartd.conf
Aug 23 16:25:48 crap smartd[15099]: Configuration file /etc/smartd.conf was parsed, found DEVICESCAN, scanning devices
Aug 23 16:25:48 crap smartd[15099]: Problem creating device name scan list
Aug 23 16:25:48 crap smartd[15099]: Device: /dev/sda, opened
Aug 23 16:25:48 crap smartd[15099]: Device /dev/sda: SATA disks accessed via libata are supported by Linux kernel versions 2.6.15-rc1 and above. Try adding '-d ata' to the smartd.conf config file line.
Aug 23 16:25:48 crap smartd[15099]: Device: /dev/sdb, opened
Aug 23 16:25:48 crap smartd[15099]: Device /dev/sdb: SATA disks accessed via libata are supported by Linux kernel versions 2.6.15-rc1 and above. Try adding '-d ata' to the smartd.conf config file line.
Aug 23 16:25:48 crap smartd[15099]: Device: /dev/sdd, opened
Aug 23 16:25:49 crap smartd[15099]: Device: /dev/sdd, IE (SMART) not enabled, skip device Try 'smartctl -s on /dev/sdd' to turn on SMART features
Aug 23 16:25:49 crap smartd[15099]: Unable to monitor any SMART enabled devices. Try debug (-d) option. Exiting...
|
ho notato due cose:
1)la scritta "Problem creating device name scan list" che fa pensare abbia scritto male il file di configurazione
2) "Device /dev/sda: SATA disks accessed via libata are supported by Linux kernel versions 2.6.15-rc1 and above. Try adding '-d ata' to the smartd.conf config file line.". Premesso che l'opzione -d ata l'ho messa nel file di config, ho anche il kernel giusto:
#uname -a
Code: |
Linux crap 2.6.16-gentoo-r12 #1 Sun Oct 8 00:13:55 CEST 2006 i686 AMD Athlon(tm) 64 Processor 3000+ GNU/Linux
|
é un processore a 64bit ma l'ho installato come un 32bit, quindi non può centrare l'architettura del processore.
Avete una qualche idea?
L'alternativa è scrivermi uno scriptino da mettere in cron che faccia da solo senza il demone smartd.
PS: ho provato anche con la configurazione proposta nell'howto di poco cambiata, stesso esito. la posto per completezza:
Code: |
/dev/sda -d ata\
-H \
-l error -l selftest \
-s (O/../../5/11|L/../../5/13|C/../../5/15) \
-m ThisIsNotUsed -M exec /etc/smartd.sh
|
_________________ ----------
Flebool |
|
Back to top |
|
|
Flebool n00b
Joined: 13 Sep 2004 Posts: 26
|
Posted: Mon Sep 25, 2006 5:03 pm Post subject: |
|
|
L'errore era banale, scusatemi... nel file di configurazione non avevo commentato la riga:
DEVICESCAN
che come si legge nel file stesso:
"# The word DEVICESCAN will cause any remaining lines in this
# configuration file to be ignored[..]"
grazie cmq, ciaoo! _________________ ----------
Flebool |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4807 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Sun Oct 22, 2006 9:43 am Post subject: Re: [HOWTO] monitorare l'hard disk con SMART - UPDATE! |
|
|
fctk wrote: | per prima cosa occorre assicurarsi che SMART sia abilitato da BIOS. Ad esempio io nella sezione BIOS Features Setup ho S.M.A.R.T. for Hard Disk: Enabled |
1. attenzione:
la cosa può risultare tutt'altro che banale.
nel mio caso, ad esempio, hoi dovuto ricorrere alle FAQ della casa madre della mia scheda madre, altrimenti non ci sarei riuscito.
2.
consiglio prezioso. ma siccome si risolve in una operazione banale, ne trarrei un'istruzione sintetica:
se avete un disco SATA che supporto SMART, accedete ad esso utilizzando sempre l'opzione -d ata del comando smartctl.
nel file /etc/smartd.conf, commentate la riga DEVICESCAN e decommentate quella /dev/sdX -a -d ata.
_________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
paccio84 n00b
Joined: 13 Apr 2007 Posts: 37
|
Posted: Fri Apr 13, 2007 2:40 pm Post subject: |
|
|
Dando il comando:
> smartctl -i /dev/sda
mi da il seguente messaggio:
smartctl version 5.36 [x86_64-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
Device: ATA ST3250624AS Version: 3.AA
Serial number: 9ND10SB0
Device type: disk
Local Time is: Fri Apr 13 16:36:49 2007 CEST
Device does not support SMART
Ho abilitato sul BIOS il supporto a S.M.A.R.T. ma nada, non funziona.
INFO: Gentoo con kernel-2.6.19-r5 con i nuovi driver per i controller ATA.
Qualcuno sa come si risolve?
Grazie in anticipo
Ciao |
|
Back to top |
|
|
.:deadhead:. Advocate
Joined: 25 Nov 2003 Posts: 2963 Location: Milano, Italy
|
Posted: Fri Apr 13, 2007 5:36 pm Post subject: |
|
|
paccio84 wrote: |
> smartctl -i /dev/sda
con i nuovi driver per i controller ATA. |
installa la versionen in ~ del pacchetto e prova a passare al programma l'opzione -d ata , come riportato nel paragrafo "FireWire, USB, and SATA disks/systems" della homepage del progetto _________________ Proudly member of the Gentoo Documentation Project: the Italian Conspiracy ! |
|
Back to top |
|
|
|