Les applications SMART
Controle de l'état du disque dur
Smart status
J'ai recherché trois programmes qui font l'analyse de la condition physique de votre disque dur. Le premier est même inclus d'office sur l'ordinateur
-

-

POST Power On Self Test

Il y a 20 ans d'ici, IBM a inclus un firmware de controle de l'état physique sur ces disques durs. Ce firmware s'appelle SMART (Self-Monitoring, Analysis and Reporting Technology). IBM ne fabrique plus d'ordinateurs personnels depuis de nombreuses années, mais la technologie a été reprise par tous les fabricants. Même les disques 'solid state' contiennent un firmware SMART.

Les cartes-mères des ordinateurs effectuent un test de la fonction SMART avant le démarrage de l'ordinateur. Cela fait partie des routines POST (Power On Self Test)

Ce test a de nombreuses limitations:

  • Il ne fournit qu'une condition BONNE ou MAUVAISE, alors qu'il existe environ 200 paramètres dont la valeur varie de 1 à 253.

  • On ne voit pas l'évolution des paramètres dans le temps, alors que l'évolution des paramètres (plus que leur valeur actuelle) est importante pour déterminer la fiabilité d'un disque.

  • La mesure est effectuée une fois lors du démarrage du système, alors qu'un vrai programme de monitoring demande les paramètres une fois par heure. L'état du disque dur varie et peut devenir plus mauvais quand le disque chauffe.

  • Pas de confirmation de la commande. La carte-mère ne signale que les conditions d'erreur. Parfois la fonction SMART n'est pas enclenchée ou le disque n'a pas répondu dans les délais.
Un vrai programme de monitoring SMART n'a pas ces inconvénients. Ils permettent tous de déterminer la fiabilité à venir du disque dur, et non une condition d'erreur présente.

Attention, la plupart des disques SCSI ne fournissent pas une information SMART complète (uniquement une réponse OK/pas OK). Il ne faut pas plus pour qu'un disque soit compatible SMART, mais cela ne suffit évidemment pas.

Les disques dans des boitiers externes avec connectique USB ne fournissent pas de paramètres SMART (eSATA: pas de problèmes!). Les disques qui font partie d'un système RAID ne transmettent pas non plus d'informations SMART.

En plus des programmes spécifiques décrits ici, il y a des suites d'applications qui incluent également un test SMART. Et Ubuntu dispose dès l'origine d'une application SMART.

HDD Health de Panterasoft

Ce programme s'installe dans la barre des tâches et effectue un controle permanent de l'état physique du disque dur. Le démarrage est automatique.

La modification d'un paramètre est indiqué par un pop-up, mais il est également possible d'envoyer un mail (interessant pour les serveurs). Certains disques ont des paramètres qui changent très souvent, il est donc recommandé d'avoir un intervalle suffisant si tu ne veux pas avoir des dixaines de pop ups sur ton écran au petit matin.

Ce programme essaie également de faire des prévisions, se basant sur l'évolution dans le temps des paramètres.

Le site de Panterasoft contient une nouvelle version avec un thermomètre qui indique l'état général, mais malheureusement la nouvelle version fournit moins de paramètres. Certains paramètres raw, comme le nombre de secteurs défectueux ne sont plus disponibles, alors que ce paramètre est très important pour déterminer que le disque doit être remplacé d'urgence.

La nouvelle version accède plus souvent au disque, ce qui empèche son passage en mode veille. HDD Health nouvelle version force à chaque fois un self-test (qui fait plus de bruit que le fonctionnement normal du disque). Le nombre de paramètres qui peuvent être modifiés est limité en comparaison de la version originale.

Voici la version originale de HDD Health. Si vous désirez la version plus récente, faites une recherche sur “HDD Health Panterasoft”.

Smartmontools

Une combinaison idéale
Utilisez aussi bien HDD Health de Panterasoft
et smartctl de smartmontools
Ce programme se compose de deux parties: un "service" qui contacte régulièrement le disque dur pour lui demander les paramètres et un programme qui tourne dans une fenètre DOS et permet une commande plus complète.

smartd

Ce composant ressemble à HDD Health, mais le résultat est placé dans le journal des évènements windows (ce qui n'est pas vraiment pratique). Il faut de plus démarrer ce service manuellement ou utiliser un aide au démarrage ("run application as service")

smartctl

Ce programme est très complet et permet des fonctions que les autres applications similaires ne permettent pas (par exemple lancer un test de surface). Le programme est un interface entre l'utilisateur et le disque dur. On envoie une commande au disque dur (par exemple démarrer le test de surface) puis quelques minutes plus tard on envoie une nouvelle commande pour récolter le résultat.

Ce programme qui travaille dans une fenètre DOS est extrèmement complet, mais les commandes ne sont pas des plus simples. C'est une traduction d'un programme unix, et l'indicateur de drive doit se faire selon la méthode unix (donc /dev/hda et non c:). Le programme peut fournir un listing très complet, et il est nécessaire d'envoyer le résultat vers un fichier (redirection DOS): ce n'est donc pas un programme pour le premier utilisateur venu.

Voici le résultat d'une demande de toutes les informations:

"c:\program files\smartmontools\bin\smartctl.exe" -a /dev/hda >c:\smart.txt
smartctl 5.42 2011-10-20 r3458 [i686-w64-mingw32-xp-sp2] (sf-win32-5.42-1)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Device Model:     INTEL SSDSC2CW060A3
Serial Number:    CVCV153503H9060AGN
LU WWN Device Id: 5 001517 bb27d18d7
Firmware Version: 400i
User Capacity:    60.022.480.896 bytes [60,0 GB]
Sector Size:      512 bytes logical/physical
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  ACS-2 revision 3
Local Time is:    Fri Mar 02 19:37:57 2012 RST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
La partie bleue est la seule information qu'un test POST sommaire fournit
General SMART Values:
Offline data collection status:  (0x00)	Offline data collection activity
					was never started.
					Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0)	The previous self-test routine completed
					without error or no self-test has ever 
					been run.
Total time to complete Offline 
data collection: 		( 2097) seconds.
Offline data collection
capabilities: 			 (0x7f) SMART execute Offline immediate.
					Auto Offline data collection on/off support.
					Abort Offline collection upon new
					command.
					Offline surface scan supported.
					Self-test supported.
					Conveyance Self-test supported.
					Selective Self-test supported.
SMART capabilities:            (0x0003)	Saves SMART data before entering
					power-saving mode.
					Supports SMART auto save timer.
Error logging capability:        (0x01)	Error logging supported.
					General Purpose Logging supported.
Short self-test routine 
recommended polling time: 	 (   1) minutes.
Extended self-test routine
recommended polling time: 	 (  48) minutes.
Conveyance self-test routine
recommended polling time: 	 (   2) minutes.
SCT capabilities: 	       (0x0021)	SCT Status supported.
					SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0032   100   100   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   000   000   000    Old_age   Always       -       188549065189236
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       31
170 Unknown_Attribute       0x0033   100   100   010    Pre-fail  Always       -       0
171 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
172 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       0
174 Unknown_Attribute       0x0032   100   100   000    Old_age   Always       -       30
184 End-to-End_Error        0x0033   100   100   090    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x000f   120   120   050    Pre-fail  Always       -       0
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       30
225 Load_Cycle_Count        0x0032   100   100   000    Old_age   Always       -       707
226 Load-in_Time            0x0032   100   100   000    Old_age   Always       -       65535
227 Torq-amp_Count          0x0032   100   100   000    Old_age   Always       -       50
228 Power-off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       65535
232 Available_Reservd_Space 0x0033   100   100   010    Pre-fail  Always       -       0
233 Media_Wearout_Indicator 0x0032   100   100   000    Old_age   Always       -       0
241 Total_LBAs_Written      0x0032   100   100   000    Old_age   Always       -       707
242 Total_LBAs_Read         0x0032   100   100   000    Old_age   Always       -       725
249 Unknown_Attribute       0x0013   100   100   000    Pre-fail  Always       -       27

SMART Error Log not supported
SMART Self-test Log not supported
Note: selective self-test log revision number (0) not 1 implies that no selective self-test has ever been run
SMART Selective self-test log data structure revision number 0
Note: revision number not 1 implies that no selective self-test has ever been run
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
Ce programme est utilisé pour fournir l'état du disque dur de mon serveur en temps réel. Il s'agit d'un disque dur de type Solid State.