Smartmontools est un paquet regroupant un ensemble d'outils basés sur la "technologie" SMART. Cette technologie est un protocole qui permet de suivre et contrôler l'état des disques durs et de différents composants de votre ordinateur.
le protocole SMART est reconnu et implémenté sur la plupart des disques durs depuis la fin des années 1990.
En configurant correctement le daemon smartd (fichier /etc/smartd.conf, il est possible d'être prévenu automatiquement si des problèmes sont détectés).
De façon incompréhensible, le paquet smartmontools n'est pas installé par défaut et fait l'objet de relativement peu de publicité
Commencez par installer le paquet
smartmontools.
Ce paquet est disponible dans la logithèque ubuntu sous le nom GSmartControl.
Variantes en ligne de commande :
Pour une installation avec notification graphique par le daemon périodique, copiez-collez dans l'ordre :
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
sudo apt-get update
sudo apt-get install smartmontools smart-notifier
Pour une installation simple, sans notification graphique, copiez-collez et attention : il y a deux tirets devant le mot no :
sudo apt-get install --no-install-recommends smartmontools
Notez que si vous n'installez pas la notification graphique 1), vous n'avez pas besoin d'activer les dépôts "universe".
Mettez d'abord votre clavier en azerty s'il ne l'est pas. Si vous partez d'un clavier qwerty, il vous faudra taper :
setxkb,qp fr
pour que s'affiche :
setxkbmap fr
Puis copiez-collez la commande suivante et attention : il y a deux tirets devant le mot no :
sudo apt-get install --no-install-recommends smartmontools
Notez que le daemon de surveillance périodique est sans objet en session live.
Dans les exemples suivants, on va considérer le disque dur nommé /dev/sdX , qu'il faudra remplacer par le nom du disque que vous voulez tester, par exemple /dev/hda, /dev/sdc 2) ou /dev/sg1 3)
sudo smartctl --smart=on --offlineauto=on --saveauto=on /dev/sdX
sudo smartctl -H -i /dev/sdX
Pour obtenir toutes les infos disponibles par SMART sur le disque
sudo smartctl -a /dev/sdX
Au moins deux types de tests sont possibles, les courts (~1 min) et les longs (~10 min à 90 min)4).
Pour lancer l'exécution des tests
sudo smartctl -t short /dev/sdX sudo smartctl -t long /dev/sdX
sudo smartctl -l selftest /dev/sdX
ou en plus bref (retourne un message seulement si le disque retourne un indicateur SMART "failing" ou si des autotests ont enregistré des erreurs)
sudo smartctl -q errorsonly -H -l selftest /dev/sdX
Dans les exemples suivants, on va considérer le disque dur nommé /dev/sdX , qu'il faudra remplacer par le nom du disque que vous voulez tester, par exemple /dev/hda, /dev/sdc ou /dev/sg1
La connaissance de l'état actuel d'un disque peut être importante pour valider une erreur de lecture écriture. Cette information est souvent demandée dans le forum. La commande est:
sudo smartctl -s on -a /dev/sdX
Cette commande peut ne pas fonctionner si le disque est connecté en usb. Certaines de ces commandes peuvent alors être essayées:
sudo smartctl -s on -d ata -a /dev/sdX
sudo smartctl -s on -d sat -a /dev/sdX
sudo smartctl -s on -d scsi -a /dev/sdX
sudo smartctl -s on -d auto -T verypermissive -a /dev/sdX
sudo smartctl -s on -d test -T verypermissive -a /dev/sdX
Si aucune commande précédente ne fonctionne avec un adaptateur USB, il peut être nécessaire de désactiver le support de UAS(P)5).
lsusb -t | grep uas
valeur de Port
et YYY valeur de Dev
lsusb -s XXX:YYY
sudo umount -v /dev/sdX*
sudo modprobe -r uas
sudo modprobe -r usb-storage
sudo modprobe usb-storage quirks=<id vendeur>:<id produit>:u
smartctl
Exemple avec un adaptateur de marque U-Green avec le chipset VIA qui se charge en /dev/sdc
$ sudo smartctl -s on -d sat -a /dev/sdc
smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.4.0-71-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
Read Device Identity failed: scsi error unsupported field in scsi command
A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.
$ lsusb -t | grep uas
|__ Port 3: Dev 35, If 0, Class=Mass Storage, Driver=uas, 480M
$ lsusb -s 3:35
Bus 003 Device 035: ID 2109:0711 VIA Labs, Inc.
$ sudo umount -v /dev/sdc*
umount: /dev/sdc: not mounted
umount: /media/ubuntu/Linux (/dev/sdc1) unmounted
$ sudo modprobe -r uas $ sudo modprobe -r usb-storage
$ sudo modprobe usb-storage quirks=2109:0711:u
$ lsusb -t | grep usb-storage
|__ Port 3: Dev 36, If 0, Class=Mass Storage, Driver=usb-storage, 480M
$ sudo smartctl -s on -d sat -a /dev/sdc
smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.4.0-71-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family: Western Digital Caviar Blue Serial ATA
Device Model: WDC WD1600AAJS-75M0A0
[…]
Si le test précédent est concluant, il est possible de rendre le changement permanent.
/etc/modprobe.d/ignore-uas.conf
avec les droits d'administration.options usb-storage quirks=<id vendeur>:<id produit>:u
Grâce au service (daemon) smartd il est possible de faire une analyse régulière et ainsi suivre sur le long terme l'état des disques durs et de votre matériel.
Il est aussi possible de paramétrer des alertes automatiques (envoi de mail, messages utilisateur par wall, syslog, … ) en cas de détections d'erreurs ou de signes de vieillissement. smartd est inclus dans le paquet smartmontools
Le fichier de configuration est /etc/smartd.conf Par défaut, il est configuré pour scanner tous les disques. Une configuration de ce fichier est donc nécessaire pour obtenir des alertes pertinentes.
Éditez le fichier /etc/default/smartmontools et décommenter start_smartd=yes puis démarrer le service en tapant dans un terminal:
sudo /etc/init.d/smartmontools start
A signaler aussi le paquet smart-notifier qui vous préviendra de tout problème imminent. L'action de ce programme est de se mettre à l'écoute des messages de tests et d'ouvrir une fenêtre d'avertissement s'il détecte un problème.
Si vous voyez une alerte SMART, il y a de fortes chances pour que votre disque soit en train de flancher. Dans votre intérêt, faites immédiatement une copie de vos fichiers ailleurs (clé USB, disque dur externe, gravure sur CD/DVD…).
Pour tester que smart-notifier fonctionne :
sudo sh -c 'echo test de message | smart-notifier --notify'
Ce qui affichera :
Lorsque vous équipez un autre pc que le votre de la notification il serait dommage qu'elle soit ignorée pour une bête impossibilité de compréhension du message…
Sauvegarder l'original en cas de boulette en tapant dans terminal:
sudo cp /usr/share/smart-notifier/smart_notifier/smart-notifier.glade /usr/share/smart-notifier/smart_notifier/smart-notifier.glade.old
puis éditez le fichier /usr/share/smart-notifier/smart_notifier/smart-notifier.glade et modifiez les lignes indiquées ci-dessous.
<property name="title" context="True" translatable="True">Alerte Disque-dur !</property>
<property name="label" context="True" translatable="True"><big><b>Alerte ! Disque-dur en Danger !</b></big></property>
<property name="label" context="True" translatable="True">S.m.a.r.t. surveille en permanence les disques-durs et donne l'alerte en cas de variation importante dans les normales relevées. 60% des pannes de disques-durs sont mécaniques, s.m.a.r.t. peut en détecter 30%. Cette alerte n'est pas à prendre à la légère et peut annoncer une panne imminente. Planifier rapidement vos sauvegardes et le remplacement de vos disques-durs.</property>
<property name="label" context="True" translatable="True">Message original de smartd :</property>
gsmartcontrol est une interface graphique (en anglais) de smartmontools.
Le site officiel est ici : GSmartControl. On trouvera des copies d'écran ici : Copies d'écran.
Contributeurs : didrocks, fnx, .amalric. pour la traduction, furious-therapy : DEB pour Jaunty.
sudo fdisk -l
sudo smartctl -a -d sat /dev/sg1Référence: http://www.cyberciti.biz/faq/linux-checking-sas-sata-disks-behind-adaptec-raid-controllers/
sudo smartctl -a /dev/sdX