[HowTo] Surveillance de ses disques avec S.M.A.R.T.

Bonjour à tous,

Aujourd’hui, nous allons nous intéresser à la surveillance de nos précieux disques durs. Ils sont de plus en plus importants car ils contiennent un tas d’informations « vitales » : photos, videos, musiques, papiers, etc. Ca pourrait être sympa si nous pouvions connaitre l’état de santé de nos disques et être prévenu quand ils commencent à ne plus tourner rond 🙂

Pour surveiller cela, nous allons utiliser le démon S.M.A.R.T. Il faut installer :

$ apt-get install smartmontools


Dans un premier temps, nous allons apprendre à utiliser la commande « smartctl« , puis nous configurerons le démon pour qu’il puisse faire ses vérifications quotidiennement.

Pour commencer, nous regarderons l’état de santé de nos disques (pour tous les exemples qui suivent, je fais la vérification sur 2 disques) :

$ smartctl -H /dev/sda
$ smartctl -H /dev/sdb

Si l’état est à « PASSED« , c’est que votre disque va bien, sinon il va falloir commencer à s’inquiéter.

Ensuite pour aller un peu plus loin, nous pouvons interroger le journal d’erreurs :

$ smarctl -l error /dev/sda
$ smarctl -l error /dev/sdb

Dans mon cas j’obtiens, « No Errors Logged« , donc tout va bien encore jusque là 🙂

Nous pouvons ensuite regarder la liste des tests qui sont disponibles pour nos disques ainsi que le temps qu’ils prendront, pour cela :

$ smartctl -c /dev/sda
$ smartctl -c /dev/sdb

A la suite de cette commande, nous pouvons ensuite lancer les différents tests suivants :

$ smartctl -t offline /dev/sda
$ smartctl -t short /dev/sda
$ smartctl -t long /dev/sda

Si vous voulez obtenir toutes les informations sur vos disques durs (Modèle, Marque, Numéro de série, Version du Firmware, Nombre d’heures d’utilisation du disque, etc.) il est possible d’utiliser la commande suivante :

$ smartctl -a /dev/sda
$ smartctl -a /dev/sdb

Les informations intéressantes :

– « Power_On_Hours » : indique le nombre d’heures d’utilisation du disque ;
– « Power_Cycle_Count » : indique le nombre de redémarrage du disque ;
– « Temperature_Celsius » : indique la température du disque.

Nous avons fait un peu le tour de l’utilisation de la ligne de commande « smartctl« . Nous allons pouvoir nous intéresser maintenant à la configuration du démon S.M.A.R.T. Pour cela, il est nécessaire d’éditer le fichier « /etc/smartd.conf » et d’y mettre les informations suivantes :

/dev/sda -H -d ata -n standby -l error -l selftest -m monAdresse@mail.com -M exec /usr/share/smartmontools/smartd-runner -s (S/../.././03|L/../../6/04)
/dev/sdb -H -d ata -n standby -l error -l selftest -m monAdresse@mail.com -M exec /usr/share/smartmontools/smartd-runner -s (S/../.././03|L/../../6/04)
/dev/sdc -H -d removable -n standby -l error -l selftest -m monAdresse@mail.com -M exec /usr/share/smartmontools/smartd-runner -s (S/../.././03|L/../../6/04)

Dans le cas présent, j’ai 3 disques dont 2 disques internes et 1 autre externe (removable). Voici le résumé des options utilisées :

H : Surveille l’état de santé du disque, comme nous avons fait plus haut ;
d : Type de disque ;
n : Lance le test que quand le disque n’est pas en mode SLEEP ou STANDBY, dans le but d’éviter de faire tourner le disque pour rien ;
l : Vérifie dans le journal d’erreurs et de selftest, que le nombre d’erreurs n’a pas augmenté ;
m : Envoie un mail si une erreur a été détectée ;
M : Lorsqu’une erreur est détectée sur un disque, smartd-runner lance tous les scripts présents dans /etc/smartmontools/run.d/ et envoie un mail à l’utilisateur du -m pour chaque script exécuté ;
s : Cron pour les tests courts et longs. Dans notre cas, un test court est prévu tous les jours à 3h du matin et un test long tous les samedi matin à 4h.

Et enfin pour terminer, modifier le fichier « /etc/default/smartmontools » pour changer la période de vérification de 30min à 1h et pour activer le démon S.M.A.R.T. au démarrage du serveur :

# uncomment to start smartd on system startup
start_smartd=yes

# uncomment to pass additional options to smartd on startup
smartd_opts="--interval=3600"

Puis pour finir, redémarrer le service :

$ /etc/init.d/smartmontools restart

Pas mal non comme surveillance ?

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *


*