pense-bête de bruno sanchiz

Accueil > Linux > en cas de problème > smart - vérifier les disques durs

smart - vérifier les disques durs

Publié le 20 août 2015, dernière mise-à-jour le 3 avril 2024, 20 visites, 23642 visites totales.

smart

on peut faire deux type de tests :

  • court ( 2 min )
  • long ( 2 heures )

Ensuite on regarde le résultat :

  • on doit avoir VALUE > THRESH
  • avec gsmartcontrol, si on a du rouge c’est mauvais signe

gsmartcontrol

  • installer gsmartcontrol ( apt-get install gsmartcontrol )
  • taper gsmartcontrol dans un terminal root ( ou par le menu Logiciels->Outils Système->GsmartControl
  • sélectionner un disque dur
  • choisissez l’onglet Perform Tests
  • lancer les deux tests

smartctl : en ligne de commande (2007->2024)

lancer le programme sudo smartctl --smart=on --offlineauto=on --saveauto=on /dev/sda ( ou sdb ou sdc ... car ce sont les petits noms des disques durs )
On peut le faire sur tous les disques :
for devsd in $(blkid|sed 's#[0-9]\:.*##'|sort -u);do sudo smartctl --smart=on --offlineauto=on --saveauto=on $devsd ; done

TESTS COURTS ET RESULTATS SUR TOUS LES DISQUES ( les résultats apparaissent à la fin de tous les tests , 2min par disque + 2 minutes )
for devsd in $(blkid |grep 'TYPE="ext'|sed 's#[0-9]\:.*##'|sort -u);do echo $devsd ; date ; smartctl -t short $devsd ; done ;  sleep 4m; for devsd in $(blkid |grep 'TYPE="ext'|sed 's#[0-9]\:.*##'|sort -u);do echo $devsd ;   smartctl -A $devsd |grep "Power_On_Hours" |sed "s#.* \([0-9]*\)#\1 heures#" ; smartctl -H $devsd ;smartctl --quietmode=errorsonly --all $devsd ; done

exemple de résultat :

dev/sdf
11940 heures

SMART overall-health self-assessment test result: PASSED

ATA Error Count: 8 (device log contains only the most recent five errors)
Error 8 occurred at disk power-on lifetime: 8224 hours (342 days + 16 hours)
Error 7 occurred at disk power-on lifetime: 8224 hours (342 days + 16 hours)
Error 6 occurred at disk power-on lifetime: 8224 hours (342 days + 16 hours)
Error 5 occurred at disk power-on lifetime: 8224 hours (342 days + 16 hours)
Error 4 occurred at disk power-on lifetime: 8224 hours (342 days + 16 hours)

On voit qui va bien ( PASSED et la dernirèe erreur date de 8224 heures alors qu’on en est à 11940 , elle est très ancienne )

test court : sudo smartctl -t short /dev/sdc

test long sudo smartctl -t long /dev/sdc

résultat du test

smartctl --quietmode=errorsonly --all /dev/sdd

sudo smartctl -l selftest /dev/sdc
On peut rajouter -T permissive, -T verypermissive au cas ou.

heures pendant lesquelles le disque tourne :smartctl -A /dev/sdc |grep "Power_On_Hours" |sed "s#.* \([0-9]*\)#\1 heures#"

liste des attributs et valeurs

smartctl -A /dev/sdc
exemple :

ID ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
7 Seek_Error_Rate 0x000f 077 060 045 Pre-fail Always - 51130987

(RAW), la valeur brute, représente la valeur mesurée de l’attribut.
THRESH représente la valeur limite
VALUE représente un indice de fiabilité actuelle de cet attribut
WORST représente la plus petite valeur de VALUE enregistrée

on doit avoir VALUE > THRESH

SI VALUE < THRESH et type = OLD-AGE : le produit est en fin de vie, usure normale
SI VALUE < THRESH et type = Pre-Fail : PANNE IMMINENTE

Nom de l’attribut Rôle Raw_Read_Error_Rate Fréquence d’apparition d’erreurs pendant la lecture de données brutes

Spin_Up_Time Temps de mise en rotation du disque

Start_Stop_Count Nombre de cycles arrêt/démarrage de l’axe de rotation

Reallocated_Sector_Ct Nombre de secteurs ré-alloués

Seek_Error_Rate Fréquence d’erreurs pendant le positionnement de la tête magnétique

Power_On_Hours Nombre d’heures de fonctionnement

Spin_Retry_Count Nombre de mises en rotation forcée du disque

Power_Cycle_Count Nombre de cycles de mise sous tension

Temperature_Celsius Température interne du disque en degrés Celsius

Hardware_ECC_Recovered Nombre de corrections ECC réalisées

Current_Pending_Sector Nombre de secteurs en attente de ré-allocation Offline_Uncorrectable Nombre de secteurs non ré-allouables

UDMA_CRC_Error_Count Nombre d’erreurs de CRC pendant un accès Ultra DMA

Il existe deux méthodes pour mettre à jour les valeurs des attributs. La première dite « always » est la plus commune. Le composant électronique observe en permanence cet attribut. A chaque consultation de l’attribut, on peut y lire la valeur en cours. Ainsi, la température, le nombre d’erreurs ECC sont à jour en permanence. Les attributs dits « offline » ne seront remis à jour que lors d’un test du disque avec l’un des quatre modes : offline, short, long, conveyance.

lea linux

[bruno sanchiz]