Serveur NAS/ownCloud – S.M.A.R.T

Retour à l’article principal : https://yavin4.ovh/index.php/2016/04/04/linuxhardkernel-nas-et-cloud-perso-avec-odroid-xu4-et-son-boitier-cloudshell/

Installer les paquets smartmontools et smart-notifier :

$ apt-get install smartmontools smart-notifier

Puis activer le contrôle SMART sur les disques :

$ smartctl --smart=on --offlineauto=on --saveauto=on /dev/sda
$ smartctl --smart=on --offlineauto=on --saveauto=on /dev/sdb

Éditer « /etc/default/smartmontools » et décommenter la ligne suivante afin d’activer le daemon smartd au démarrage :

start_smartd=yes

Éditer « /etc/smartd.conf » et ajouter une ligne de ce type pour chaque disque :

/dev/sda -a -W 4,35,45 -s (S/../.././06) -m root -M exec /usr/share/smartmontools/smartd-runner
/dev/sdb -a -W 4,35,45 -s (S/../.././06) -m root -M exec /usr/share/smartmontools/smartd-runner

Explications :

-a : Surveille tout type de dysfonctionnement.

-W 4,35,45 : Surveiller la température du disque. Si la température atteint 35°, un log sera créé. Si elle atteint 45°, un log et une alerte mail seront créés. On log aussi lorsqu’il y a une variation de température de 4°.

-s (S/../.././06) : Programmer une analyse courte (S), tous les jours (/../.././) à 6:00 du matin (06). Il est aussi possible de programmer des tests longs, voire les deux (court et long), par exemple : (S/../.././02|L/../../6/03) programme un test court tous les jours à partir de 2h du matin et un test long tous les samedis à partir de 3h du matin.

-m root -M exec /usr/share/smartmontools/smartd-runner : l’option -m permet d’envoyer un mail en cas de problème au destinataire renseigné (ici root mais cela peut-être une adresse mail si vous avez un service de messagerie configuré). Mais si l’option -m est suivi de l’option -M exec alors on exécutera cette dernière à la place. Donc ici, si une défaillance ou une température trop élevée est détectée sur le disque, c’est le script « /usr/share/smartmontools/smartd-runner » qui sera exécuté plutôt que d’envoyer un mail à root. Ce script exécute à son tour tout ce qui se trouve dans « /etc/smartmoontools/run.d/ ».

Dans « /etc/smartmontools/run.d/ », éditer le fichier « 10mail », commenter toutes les lignes et ajouter la suivante qui permettra d’envoyer une alerte mail en cas de problème :

echo $SMARTD_MESSAGE | mutt -s "Alerte SMART" mon_mail


J’utilise le client mutt pour l’envoi de mail, pour la raison que je l’utilise pour d’autres alertes nécessitant l’insertion de pièce jointe (et seul mutt sait le faire). Si vous avez un postfix ou autre service de messagerie configuré, vous pouvez l’utiliser. Sinon pour installer mutt :

$ apt-get install mutt

Puis créer un fichier « .muttrc » dans le homedir de root et le compléter en suivant le chapitre I.2. de ce tuto (rédigé pour Un Raspberry Pi mais la démarche est la même) : https://yavin4.ovh/index.php/2014/11/30/raspberry-pi-camera-de-video-surveillance-recevoir-des-alertes-mails/#I2_Configuration_de_mutt



Redémarrer smartd :

$ service smartd restart

Il est possible de vérifier dans « /var/log/syslog » que smartd a bien pris en compte les deux disques configurés précédemment :

Oct  8 14:53:23 odroid smartd[18680]: smartd 6.5 2016-05-07 r4318 [armv7l-linux-3.10.103-123] (local build)
Oct  8 14:53:23 odroid smartd[18680]: Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
Oct  8 14:53:23 odroid smartd[18680]: Opened configuration file /etc/smartd.conf
Oct  8 14:53:23 odroid smartd[18680]: Configuration file /etc/smartd.conf parsed.
Oct  8 14:53:23 odroid smartd[18680]: Device: /dev/sda [SAT], opened
Oct  8 14:53:23 odroid smartd[18680]: Device: /dev/sda [SAT], ST2000LM003 HN-M201RAD, S/N:S362J9EGC92658, WWN:5-0004cf-2118170dc, FW:2BE10001, 2.00 TB
Oct  8 14:53:23 odroid smartd[18680]: Device: /dev/sda [SAT], found in smartd database: Seagate Samsung SpinPoint M9T
Oct  8 14:53:23 odroid smartd[18680]: Device: /dev/sda [SAT], not capable of SMART Health Status check
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sda [SAT], is SMART capable. Adding to "monitor" list.
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sda [SAT], state read from /var/lib/smartmontools/smartd.ST2000LM003_HN_M201RAD-S362J9EGC92658.ata.state
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sdb [SAT], opened
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sdb [SAT], ST2000LM003 HN-M201RAD, S/N:S362J9EGC92655, WWN:5-0004cf-21181709b, FW:2BE10001, 2.00 TB
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sdb [SAT], found in smartd database: Seagate Samsung SpinPoint M9T
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sdb [SAT], is SMART capable. Adding to "monitor" list.
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sdb [SAT], state read from /var/lib/smartmontools/smartd.ST2000LM003_HN_M201RAD-S362J9EGC92655.ata.state
Oct  8 14:53:24 odroid smartd[18680]: Monitoring 2 ATA/SATA, 0 SCSI/SAS and 0 NVMe devices
Oct  8 14:53:24 odroid smartd[18680]: Device: /dev/sda [SAT], initial Temperature is 31 Celsius (Min/Max 29/48)
Oct  8 14:53:25 odroid smartd[18680]: Device: /dev/sdb [SAT], initial Temperature is 24 Celsius (Min/Max 24/32)
Oct  8 14:53:25 odroid smartd[18680]: Device: /dev/sda [SAT], state written to /var/lib/smartmontools/smartd.ST2000LM003_HN_M201RAD-S362J9EGC92658.ata.state
Oct  8 14:53:25 odroid smartd[18680]: Device: /dev/sdb [SAT], state written to /var/lib/smartmontools/smartd.ST2000LM003_HN_M201RAD-S362J9EGC92655.ata.state
Oct  8 14:54:09 odroid systemd[1]: Stopping Self Monitoring and Reporting Technology (SMART) Daemon...
Oct  8 14:54:09 odroid smartd[18680]: smartd received signal 15: Terminated

Aussi, au premier redémarrage, smartd est censé envoyer un mail de test si l’option -m est renseignée. Il est possible d’effectuer à nouveau un test en ajoutant l’option -M test et en redémarrant à nouveau smartd :

/dev/sda -a -W 4,35,45 -s (S/../.././06) -m root -M test -M exec /usr/share/smartmontools/smartd-runner
%d blogueurs aiment cette page :