Guide des technologies

smartmontools : installation, configuration et surveillance des disques SMART

7 min read Administration Mis à jour 03 Oct 2025
smartmontools : installation et guide
smartmontools : installation et guide

smartmontools permet de surveiller les disques durs/SSD via SMART, d’exécuter des autotests et de recevoir des alertes automatiques en cas de dégradation. Ce guide explique l’installation, l’utilisation en ligne de commande, la configuration du démon smartd, l’utilisation de GSmartControl et propose des procédures, checklists et conseils de réponse aux alertes.

Important

  • Faites toujours une sauvegarde complète dès qu’une alerte SMART signale une erreur. Une alerte n’est pas une certitude, mais indique un risque élevé.

À propos de smartmontools

Le paquet smartmontools contient deux utilitaires : smartctl et smartd. Ils utilisent le système SMART (Self-Monitoring, Analysis and Reporting Technology) intégré à la plupart des disques ATA et SCSI modernes. smartctl interroge et teste les disques; smartd est un démon qui automatise les contrôles et envoie des alertes.

Définition rapide

  • SMART : technologie embarquée dans les disques permettant d’enregistrer des attributs de santé et d’exécuter des autotests.

TL;DR technique

  • Installer smartmontools, activer SMART sur le périphérique, lancer des autotests courts et longs, puis configurer smartd pour des vérifications et notifications automatiques. Utiliser GSmartControl pour une interface graphique.

Installation

Sur Debian/Ubuntu :

sudo apt-get install smartmontools

Assurez-vous que le disque est compatible SMART. Pour vérifier :

sudo smartctl -i /dev/sda

Remplacez /dev/sda par le périphérique réel (par ex. /dev/nvme0n1 pour NVMe ; smartctl admet des options -d pour certains contrôleurs).

Informations SMART du disque montrant le modèle, la capacité et la prise en charge SMART

Si SMART n’est pas activé, activez-le :

sudo smartctl -s on /dev/sda

Sortie indiquant que le support SMART a été activé pour le périphérique

Vérification et informations complètes

Obtenir toutes les informations SMART :

sudo smartctl -a /dev/sda

Pour les périphériques SATA explicites :

sudo smartctl -a -d ata /dev/sda

Vérifier l’état général de santé :

sudo smartctl -H /dev/sda

Si l’état Health indique un problème, sauvegardez immédiatement les données.

Tests SMART

smartctl propose plusieurs autotests : court, long et conveyance. Pour lister les capacités de test :

sudo smartctl -c /dev/sda

Liste des autotests disponibles et durées estimées pour chaque test

Démarrer un test long :

sudo smartctl -t long /dev/sda

Démarrer un test court :

sudo smartctl -t short /dev/sda

Démarrer un test de conveyance :

sudo smartctl -t conveyance /dev/sda

Notez que les tests s’exécutent en arrière-plan. Consultez le journal des autotests :

sudo smartctl -l selftest /dev/sda

Exemple de sortie d'autotest montrant des entrées de test et des codes d'erreur

Si des erreurs apparaissent dans les logs d’autotest ou les attributs SMART (secteurs réalloués, erreurs de lecture, taux d’erreur), planifiez une sauvegarde et remplacez le disque.

Configuration du démon smartd

smartd automatise les vérifications et l’envoi d’alertes. Pour démarrer smartmontools au démarrage :

sudo nano /etc/default/smartmontools

Décommentez la ligne qui démarre le service au boot si nécessaire.

Fichier de configuration par défaut pour démarrer smartmontools

Modifier la configuration des périphériques et des options dans /etc/smartd.conf :

sudo nano /etc/smartd.conf

Exemple de ligne pour un disque unique :

/dev/sda -m root -M exec /usr/share/smartmontools/smartd-runner

Signification rapide des options courantes

  • -a : options courantes utiles (équivalent de plusieurs drapeaux).
  • -H : vérifie le statut de santé SMART.
  • -l error -l selftest : surveille les logs d’erreur et les autotests.
  • -f : vérifie l’attribut d’utilisation.
  • -s S/../.././02|L/../../6/03 : planning des autotests (court chaque jour à 02:00, long chaque samedi à 03:00).
  • -m root : envoie un e-mail à root en cas d’alerte.
  • -M exec : exécute le script smartd-runner pour actions personnalisées.

Si DEVICESCAN ne convient pas, précisez explicitement /dev/sda ou un autre périphérique.

Automatisation et notifications

Le script /usr/share/smartmontools/smartd-runner exécute des actions prédéfinies (notamment l’envoi de mail). Vous pouvez :

  • Remplacer ou compléter smartd-runner par votre script de notification (Slack, PagerDuty, webhook).
  • Utiliser -m pour envoyer les emails via le MTA local.
  • Faire remonter les événements vers un système de monitoring central (Prometheus/Grafana via un exporter, SIEM, etc.).

Interface graphique GSmartControl

Pour une interface graphique :

sudo apt-get install gsmartcontrol

Vue générale de GSmartControl affichant la liste des périphériques et leur état

Fenêtre d'information d'un périphérique dans GSmartControl montrant les attributs SMART

GSmartControl facilite l’exécution d’autotests et la lecture des attributs SMART pour des utilisateurs non expérimentés. Utilisez-la pour inspecter rapidement plusieurs disques.

Que faire en cas d’alerte SMART

Playbook de réponse rapide

  1. Sauvegarde immédiate
    • Copiez les données critiques vers un stockage externe ou cloud.
  2. Collecte d’informations
    • Exécutez : sudo smartctl -a /dev/sda
    • Notez les attributs clefs : Reallocated_Sector_Ct, Current_Pending_Sector, Offline_Uncorrectable.
  3. Tests complets
    • Lancez un test long : sudo smartctl -t long /dev/sda et attendez la fin.
  4. Évaluation
    • Si Reallocated_Sector_Ct ou Current_Pending_Sector augmente, planifiez le remplacement.
  5. Remplacement et restauration
    • Remplacez le disque et restaurez depuis sauvegarde ou reconstruisez le RAID.
  6. Post-mortem
    • Archivez les logs smartctl et notez les étapes prises.

Incident runbook minimal

- Étape 1: snapshot/sauvegarde rapide
- Étape 2: collecter smartctl -a et smartctl -l selftest
- Étape 3: si possible, cloner le disque (ddrescue)
- Étape 4: remplacer le périphérique
- Étape 5: restaurer les données

Heuristiques pratiques et modèles mentaux

  • Règle des 3 attributs : surveillez Reallocated_Sector_Ct, Current_Pending_Sector, Offline_Uncorrectable. Si l’un augmente, agissez.
  • Priorité sauvegarde > diagnostic. Toujours sauvegarder d’abord.
  • SMART peut ne pas prédire toutes les pannes mécaniques ou électroniques. Considérez-le comme un signal d’alerte, pas une certitude.

Quand SMART peut échouer ou être insuffisant

  • Disques avec firmware défectueux qui n’envoient pas correctement les attributs.
  • Pannes intermittentes liées au contrôleur/RAID qui masquent l’état SMART brut.
  • SSD récents dont certains attributs SMART varient selon le fabricant et sont moins standardisés.
  • Disques réseau/stockage SAN où SMART n’est pas exposé au système invité.

Approches alternatives

  • Outils fabricants (SeaTools, WD Data Lifeguard) pour diagnostics spécifiques.
  • Monitoring par lecture régulière de checksums de fichiers (détection de corruption silencieuse).
  • Solutions hardware RAID avec monitoring intégré et alertes.

Checklist rapide pour les administrateurs

  • Installer smartmontools
  • Activer SMART sur tous les disques
  • Lancer des tests courts initialement
  • Configurer smartd pour exécuter des checks réguliers
  • Configurer notifications (mail, webhook, SIEM)
  • Documenter le plan de remplacement et testez la restauration

Critères d’acceptation

  • smartd fonctionne et exécute des vérifications programmées.
  • Les alertes SMART déclenchent une notification testée (e-mail ou webhook).
  • Une procédure de sauvegarde et de restauration est en place et validée.

Exemples de configuration utiles

Ligne smartd recommandée pour un serveur simple :

DEVICESCAN -a -H -l error -l selftest -f -s(S/../.././02|L/../../6/03) -m [email protected] -M exec /usr/share/smartmontools/smartd-runner

Remplacez [email protected] par votre adresse d’alerte. Si vous n’avez pas smartd-runner, retirez le -M exec.

Sécurité et vie privée

  • Les logs SMART peuvent contenir des identifiants matériels (numéros de série). Contrôlez l’accès à ces logs.
  • Si vous envoyez alertes vers des services externes, assurez-vous que les canaux sont sécurisés et conformes à votre politique de confidentialité.

Compatibilité et migration

  • NVMe : smartctl prend en charge NVMe via -d nvme et des périphériques /dev/nvme* ; utilisez la documentation pour options spécifiques.
  • RAID matériel : souvent SMART est masqué par le contrôleur. Vérifiez si le contrôleur relaye SMART ou utilisez des outils du fabricant.

Modèle décisionnel (flowchart)

flowchart TD
  A[Détection d'alerte SMART] --> B{Attribut critique augmenté ?}
  B -- Oui --> C[Sauvegarde immédiate]
  B -- Non --> D[Lancer tests longs]
  D --> E{Tests OK ?}
  E -- Non --> C
  E -- Oui --> F[Surveiller et planifier remplacement selon tendance]
  C --> G[Remplacer disque et restaurer]
  F --> H[Revue périodique des logs]
  G --> H

Glossaire rapide

  • SMART : Self-Monitoring, Analysis and Reporting Technology.
  • smartctl : utilitaire en ligne de commande pour interroger et tester les disques.
  • smartd : démon qui automatise les contrôles SMART et les notifications.

Tests et critères d’acceptation techniques

  • Test 1 : exécution de sudo smartctl -H /dev/sda doit renvoyer PASSED sur un disque sain.
  • Test 2 : planification de test court via smartd et vérification dans smartctl -l selftest.
  • Test 3 : génération d’une alerte test et réception de la notification par e-mail ou webhook.

Templates et commandes utiles (cheat sheet)

  • Lister tous les disques détectés par smartctl :
sudo smartctl --scan
  • Collecter une sortie complète pour diagnostic :
sudo smartctl -a /dev/sda > /var/log/smartctl-sda.log
  • Lancer un test long et vérifier son état :
sudo smartctl -t long /dev/sda
sleep 10
sudo smartctl -a /dev/sda | grep -i selftest -A5

Bonnes pratiques

  • Testez vos scripts de notification régulièrement.
  • Ne vous fiez pas à un seul indicateur : corrélez plusieurs attributs SMART.
  • Intégrez SMART à votre chaîne de monitoring pour corrélation avec métriques système.

Résumé

smartmontools fournit des outils robustes pour surveiller la santé des disques via SMART. Installez smartmontools, activez SMART, exécutez des tests, et configurez smartd pour automatiser les vérifications et les notifications. Complétez par GSmartControl si vous préférez une interface graphique. Dès qu’une alerte apparaît, sauvegardez, collectez les logs, lancez des tests complets et remplacez le disque si nécessaire.

Notes

  • Consultez les pages de manuel pour approfondir : man 8 smartctl, man 8 smartd, man 5 smartd.conf.

Liens

  • smartmontools.org
Auteur
Édition

Matériaux similaires

Infographies et visualisation de données efficaces
Design & Data

Infographies et visualisation de données efficaces

7 conseils pour vidéos cinématiques au smartphone
Vidéo

7 conseils pour vidéos cinématiques au smartphone

Accélérer Google Chrome : 9 méthodes efficaces
Navigateur

Accélérer Google Chrome : 9 méthodes efficaces

Corriger erreur EA AntiCheat pilote incompatible
Dépannage

Corriger erreur EA AntiCheat pilote incompatible

Tether : Android comme modem sans root
réseau

Tether : Android comme modem sans root

Installer Linux sur un Chromebook
Linux

Installer Linux sur un Chromebook