Self-Monitoring, Analysis, and Reporting Technology, ou S.M.A.R.T. (littéralement Technique d’Auto-surveillance, d’Analyse et de Rapport) est un système de surveillance du disque dur d’un ordinateur. Il permet de faire un diagnostic selon plusieurs indicateurs de fiabilité dans le but d’anticiper les erreurs sur le disque dur.
Les disques durs peuvent souffrir de deux types de défaillances :
Un système de surveillance peut détecter le premier type de défaillance, tout comme la jauge de température du tableau de bord d’une voiture peut prévenir le conducteur - avant que de graves dégâts n’apparaissent - que le moteur a commencé à surchauffer.
Les pannes mécaniques, qui sont des défaillances prévisibles, représentent 60 % des pannes de disque. Le but du système S.M.A.R.T. est de prévenir l’utilisateur ou l’administrateur système de l’imminence d’une panne de disque alors qu’il reste encore du temps pour agir - comme par exemple copier les données sur un disque de remplacement. Environ 30 % des défaillances peuvent être prévues par le système S.M.A.R.T.
La page de PCTechGuide à propos de S.M.A.R.T. (2003) explique que le développement cette technique a connu 3 phases :
« Dans sa version originale, SMART fournissait une prévision des défaillances par la surveillance de certaines activités du disque dur en fonctionnement. Une seconde version a amélioré la prévision des défaillances en ajoutant un balayage en lecture automatique à l’arrêt pour surveiller des opérations supplémentaires. La dernière technologie SMART III surveille non seulement les activités du disque dur mais augmente aussi la prévention des défaillances en tentant de détecter et de réparer les erreurs sur des secteurs. En outre, alors que les précédentes versions de cette technologie surveillaient uniquement l’activité du disque dur concernant les données récupérées par le système d’exploitation, SMART III analyse toutes les données et tous les secteurs d’un disque en utilisant la collecte de données à l’arrêt pour confirmer le bon état du disque durant les périodes d’inactivité. »
Chaque constructeur de disque définit un ensemble d’attributs et détermine les valeurs de seuil qui ne devraient pas être dépassées dans des conditions normales de fonctionnement. Les valeurs des attributs s’échelonnent de 1 à 253 (1 représentant le pire cas et 253 le meilleur). En fonction du constructeur, une valeur comprise entre 100 et 200 est souvent choisie comme valeur « normale ». Les constructeurs suivants supportent un ou plusieurs attributs S.M.A.R.T dans leurs produits : Samsung, Seagate, IBM, Hitachi, Fujitsu, Maxtor, Western Digital. Ces constructeurs ne s’accordent pas obligatoirement ni sur une définition précise des attributs, ni sur leurs unités de mesure ; par conséquent, la liste suivante ne devrait être considérée que comme une référence assez générale.
(Les attributs notés *CRITIQUE* sont des indicateurs potentiels d’une panne électromécanique imminente.)
ID | Hex | Nom de l’attribut | Description |
---|---|---|---|
01 | 01 | Read Error Rate | *CRITIQUE* Indique le taux d’erreur matérielle lors de la lecture de la surface du disque. Une valeur élevée indique un problème soit avec la surface du disque, soit avec les têtes de lecture/écriture. |
02 | 02 | Throughput Performance | Performance générale en sortie du disque. Si la valeur de l’attribut diminue, alors la probabilité d’avoir un problème avec le disque augmente. |
03 | 03 | Spin-Up Time | Temps moyen mise en rotation (de zéro RPM ou tour par minute jusqu’au fonctionnement complet). |
04 | 04 | Start/Stop Count | Décompte des cycles de mise en rotation (démarrage/arrêt). |
05 | 05 | Reallocated Sectors Count | *CRITIQUE* Nombre de secteurs réalloués. Quand le disque dur obtient une erreur de lecture/écriture/vérification sur un secteur, il note ce secteur comme réalloué et transfère les données vers une zone réservée spéciale (la zone de réserve). Ce processus est aussi connu sous le nom de remapping et les secteurs réalloués sont appelés remaps. C’est pourquoi, sur les disques modernes, on ne peut pas voir de « mauvais » blocs lorsqu’on teste la surface du disque (tous les mauvais secteurs sont cachés dans les secteurs réalloués). Cependant, plus il y a de secteurs réalloués, plus la vitesse d’écriture/lecture diminue. |
06 | 06 | Read Channel Margin | Marge du canal pendant la lecture des données. La fonction de cet attribut n’est pas spécifiée. |
07 | 07 | Seek Error Rate | Taux d’erreurs d’accès des têtes magnétiques. S’il y a une défaillance du système de positionnement mécanique, un endommagement du servomécanisme ou une dilatation thermique du disque dur, le nombre d’erreurs de recherche augmente. Une augmentation du nombre d’erreurs d’accès indique que l’état de la surface du disque et le sous-système mécanique se dégradent. |
08 | 08 | Seek Time Performance | Performance moyenne des opérations d’accès des têtes magnétiques. Si cet attribut diminue, c’est un signe de problèmes avec le sous-système mécanique. |
09 | 09 | Power-On Hours (POH) | Nombre d’heures de fonctionnement. La valeur brute de cet attribut indique le nombre total d’heures (ou de minutes ou de secondes, selon le constructeur) de fonctionnement du disque. Quand cette valeur se rapproche du niveau critique (durée de vie du disque donnée par le constructeur), le temps moyen entre deux pannes ou MTBF tend vers zéro. Cependant, en réalité, même si le MTBF chute à zéro, cela n’implique pas obligatoirement que le disque va cesser de fonctionner normalement. |
10 | 0A | Spin Retry Count | Nombre d’essais de relancement de la rotation. Cet attribut stocke le nombre total d’essais de relancement de la rotation pour atteindre la pleine vitesse de fonctionnement (à condition que la 1re tentative soit un échec). Une augmentation de cet attribut est signe de problèmes au niveau du sous-système mécanique du disque dur. |
11 | 0B | Recalibration Retries | Cet attribut indique le nombre de fois qu’une recalibration a été relancée (à condition que la 1re tentative soit un échec). Une augmentation de cet attribut est signe de problèmes au niveau du sous-système mécanique du disque dur. |
12 | 0C | Device Power Cycle Count | Cet attribut indique le nombre total de cycles marche/arrêt complets du disque dur. |
13 | 0D | Soft Read Error Rate | Taux d’erreurs non corrigées transmises au système d’exploitation. |
190 | BE | Airflow Temperature (WDC) | Température de l’air sur les disques Western Digital (la même que la température (C2), mais la valeur de l’attribut est inférieure de 50). |
193 | C1 | Load/Unload Cycle | Nombre de cycles de chargement/déchargement dans la position où la tête magnétique est posée. |
194 | C2 | Temperature | Température interne actuelle. |
195 | C3 | Hardware ECC Recovered | Temps entre les erreurs corrigées par code correcteur (?) (augmente et diminue, une faible valeur est probablement mauvais). |
196 | C4 | Reallocation Event Count | *CRITIQUE* Nombre d’opérations de réallocation (remap). La valeur brute de cet attribut est le nombre total de tentatives de transfert de données entre un secteur réalloué et un secteur de réserve. Les essais fructueux et les échecs sont tous comptés au même titre. |
197 | C5 | Current Pending Sector Count | *CRITIQUE* Nombre de secteurs « instables » (en attente de réallocation). Quand des secteurs instables sont lus avec succès, cette valeur est diminuée. Si des erreurs se produisent à la lecture d’un secteur, le disque va tenter de récupérer les données, puis de les transférer vers la zone de réserve et va marquer le secteur comme réalloué. |
198 | C6 | Uncorrectable Sector Count | *CRITIQUE* Nombre total d’erreurs incorrigibles à la lecture/écriture d’un secteur. Une augmentation de cette valeur indique des défauts de la surface du disque et/ou des problèmes avec le sous-système mécanique. |
199 | C7 | UltraDMA CRC Error Count | Nombre d’erreurs dans le transfert de données via le câble d’interface comme déterminé par l’ICRC (Interface Cyclic Redundancy Check, littéralement vérification des redondances cycliques de l’interface). |
200 | C8 | Write Error Rate / Multi-Zone Error Rate | Nombre total d’erreurs à l’écriture d’un secteur. |
220 | DC | Disk Shift | *CRITIQUE* Distance de laquelle le disque est déplacé par rapport à son axe de rotation (habituellement à cause des chocs). L’unité de mesure est inconnue. |
221 | DD | G-Sense Error Rate | Nombre d’erreurs résultant de chocs ou de vibrations externes. |
222 | DE | Loaded Hours | Temps de fonctionnement passé en charge de données (mouvement de l’armature des têtes magnétiques). |
223 | DF | Load/Unload Retry Count | Nombre de fois que la tête a changé de position. |
224 | E0 | Load Friction | Résistance causée par la friction dans les parties mécaniques en cours de fonctionnement. |
226 | E2 | Load 'In'-time | Temps total de charge sur l’actuateur des têtes magnétiques (temps qui n’est pas passé en zone de positionnement fixe). |
227 | E3 | Torque Amplification Count | Nombre de tentatives de compensation des variations de la vitesse de rotation du plateau. |
228 | E4 | Power-Off Retract Cycle | Nombre de fois que l’armature magnétique a été rétractée automatiquement suite à une coupure d’alimentation. |
230 | E6 | GMR Head Amplitude | Amplitude des « à-coups » (amplitude du mouvement d’avance et de recul répétitif de la tête) |