{"id":3985,"date":"2020-02-28T12:54:25","date_gmt":"2020-02-28T11:54:25","guid":{"rendered":"https:\/\/olivier.hoarau.org\/?p=3985"},"modified":"2020-02-28T19:08:54","modified_gmt":"2020-02-28T18:08:54","slug":"reconstruction-dun-dell-poweredge-t310-apres-un-crash-disque-dun-raid-5","status":"publish","type":"post","link":"https:\/\/olivier.hoarau.org\/?p=3985","title":{"rendered":"reconstruction d&rsquo;un dell poweredge T310 apr\u00e8s un crASH disque d&rsquo;un raid 5"},"content":{"rendered":"\n<p>Pour m\u00e9moire, je dispose d&rsquo;un serveur <a href=\"https:\/\/olivier.hoarau.org\/?p=2173\">Dell PowerEdge T310 <\/a>que j&rsquo;ai achet\u00e9 pour une  poign\u00e9e de figues sur ebay, d&rsquo;occasion \u00e9videmment. Il me sert de serveur  perso sur mon r\u00e9seau local (<a href=\"https:\/\/www.funix.org\/fr\/linux\/index.php?ref=mountage\">serveur de fichiers<\/a> via <strong>NFS<\/strong> et automontage sur les clients, de serveur de mail en <a href=\"https:\/\/www.funix.org\/fr\/linux\/index.php?ref=mail\">r\u00e9ception<\/a> et en <a href=\"https:\/\/www.funix.org\/fr\/linux\/index.php?ref=sendmail\">\u00e9mission<\/a>, et de <a href=\"https:\/\/www.funix.org\/fr\/linux\/index.php?ref=ldap2\">serveur d&rsquo;authentification<\/a>, entre autres), il me permet \u00e9galement d&rsquo;envoyer et de recevoir des mails \u00e0 partir de mon t\u00e9l\u00e9phone mobile o\u00f9 que je sois en fournissant un <a href=\"https:\/\/olivier.hoarau.org\/?p=3887\">service de webmail <\/a>\u00e0 distance. <\/p>\n\n\n\n<p>Il est install\u00e9 dans le  garage et tourne 7j\/7 24h\/24. Il est \u00e9quip\u00e9 d&rsquo;une carte contr\u00f4leur RAID hard PERC 6\/i et de 6 disques durs au total : 2 disques SATA  en RAID 1  (install\u00e9s d&rsquo;origine \u00e0 l&rsquo;achat de la b\u00eate) pour le syst\u00e8me et  4 disques SATA Seagata Barracuda en RAID 5 rajout\u00e9s en plus pour les  donn\u00e9es, c&rsquo;est sans doute ce qui m&rsquo;a co\u00fbt\u00e9 le plus cher pour monter cette configuration. A l&rsquo;\u00e9poque de mon achat (2015) j&rsquo;avais install\u00e9 la Mageia 5.<br> Depuis par flemme et surtout car j&rsquo;appr\u00e9hendais le boulot vu la  personnalisation pouss\u00e9e du serveur, j&rsquo;avais repouss\u00e9 aux calendes  grecques sa mise \u00e0 jour alors que Mageia 5 n&rsquo;est plus maintenue depuis un certain temps.<br>Et bien en fait, le serveur s&rsquo;est rappel\u00e9 \u00e0 moi il y a quelques jours avec un  disque SATA qui a l\u00e2ch\u00e9 au bout de 5 ans de fonctionnement. C&rsquo;est un mod\u00e8le bas  de gamme qui n&rsquo;est pas pr\u00e9vu pour tourner 7j\/7 24h\/24. En farfouillant  dans la configuration BIOS du contr\u00f4leur PERC 6\/i, je d\u00e9couvre que j&rsquo;ai  un autre disque qui est \u00e0 deux doigts de l\u00e2cher, je me retrouve avec un  syst\u00e8me virtuel RAID 5 fortement d\u00e9grad\u00e9 qui m&rsquo;a g\u00e9n\u00e9r\u00e9 une tonne  d&rsquo;erreurs de disques que j&rsquo;ai d\u00fb traiter avec <strong>fsck<\/strong>. Au final j&rsquo;ai laiss\u00e9  des plumes niveau donn\u00e9es. Mais ouf ! Je suis bien content d&rsquo;avoir  programm\u00e9 une sauvegarde incr\u00e9mentale sur un autre disque externe (voir  par <a rel=\"noreferrer noopener\" href=\"https:\/\/olivier.hoarau.org\/?p=3763\" target=\"_blank\">l\u00e0<\/a> ).<br>Tant qu&rsquo;\u00e0 faire \u00e0 mettre les mains dans le cambouis, je me suis dit qu&rsquo;il \u00e9tait temps de migrer vers Mageia 7.1, j&rsquo;ai fait le  choix de ne pas refaire une installation compl\u00e8te pour ne pas perdre toute  ma configuration et gagner du temps. J&rsquo;ai donc op\u00e9r\u00e9 une migration vers la 6 puis vers  la 7.1 et l\u00e0 bluff\u00e9 j&rsquo;ai retrouv\u00e9 tous mes petits et pourtant j&rsquo;avais de  quoi m&rsquo;inqui\u00e9ter avec tout ce qui tourne dessus en version packag\u00e9e,  compil\u00e9e et fortement personnalis\u00e9e. Je dois juste d\u00e9plorer qu&rsquo;il n&rsquo;a pas repris le  fichier de configuration de <strong>sendmail<\/strong>, mais \u00e0 part \u00e7a rien \u00e0 redire.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"406\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana.jpg?resize=474%2C406&#038;ssl=1\" alt=\"\" class=\"wp-image-3986\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana-scaled.jpg?resize=1024%2C878&amp;ssl=1 1024w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana-scaled.jpg?resize=300%2C257&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana-scaled.jpg?resize=768%2C659&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana-scaled.jpg?resize=1536%2C1318&amp;ssl=1 1536w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana-scaled.jpg?resize=2048%2C1757&amp;ssl=1 2048w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana-scaled.jpg?w=948&amp;ssl=1 948w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/2020-02-22-serveur-mana-scaled.jpg?w=1422&amp;ssl=1 1422w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p><br>Me voil\u00e0 donc avec un serveur up to date. Pour reconstruire le RAID, j&rsquo;ai install\u00e9 2  disques Seagate de la gamme au dessus, des IronWolf qui sont donn\u00e9s pour pouvoir tourner 7j\/7 et  24h\/24, en esp\u00e9rant tout de m\u00eame qu&rsquo;ils tiennent plus que 5 ans. <\/p>\n\n\n\n<center><iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"\/\/ws-eu.amazon-adsystem.com\/widgets\/q?ServiceVersion=20070822&#038;OneJS=1&#038;Operation=GetAdHtml&#038;MarketPlace=FR&#038;source=ss&#038;ref=as_ss_li_til&#038;ad_type=product_link&#038;tracking_id=blog0d24-21&#038;language=fr_FR&#038;marketplace=amazon&#038;region=FR&#038;placement=B07H289S7B&#038;asins=B07H289S7B&#038;linkId=45a2352ef1c2792c3e2e0ff97aa42eb5&#038;show_border=true&#038;link_opens_in_new_window=true\"><\/iframe><\/center>\n\n\n\n<!--more-->\n\n\n\n<p>La reconstruction a dur\u00e9 tout de m\u00eame plus de 24h, il reste n\u00e9anmoins que j&rsquo;ai encore 2 anciens disques durs barracuda que je dois encore changer pour \u00eatre tranquille. Pour m&rsquo;en assurer quand j&rsquo;acc\u00e8de aux informations de monitoring <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Self-Monitoring,_Analysis_and_Reporting_Technology\">SMART<\/a> avec la commande <strong>smartctl -d megaraid,5 -a \/dev\/sdb <\/strong>outre les informations de base sur le disque identifi\u00e9 par l&rsquo;id 5<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>=== START OF INFORMATION SECTION ===\nModel Family:     Seagate Barracuda 7200.14 (AF)\nDevice Model:     ST2000DM001-1ER164\nSerial Number:    Z4Z2CWV3\nLU WWN Device Id: 5 000c50 07ac2d42f\nFirmware Version: CC25\nUser Capacity:    2\u202f000\u202f398\u202f934\u202f016 bytes [2,00 TB]\nSector Sizes:     512 bytes logical, 4096 bytes physical\nRotation Rate:    7200 rpm\nForm Factor:      3.5 inches\nDevice is:        In smartctl database [for details use: -P show]\nATA Version is:   ACS-2, ACS-3 T13\/2161-D revision 3b\nSATA Version is:  SATA 3.1, 6.0 Gb\/s (current: 1.5 Gb\/s)\nLocal Time is:    Fri Feb 28 11:25:41 2020 CET\nSMART support is: Available - device has SMART capability.\nSMART support is: Enabled\n<\/code><\/pre>\n\n\n\n<p>on obtient des lignes d&rsquo;\u00e9tat dont les lignes suivantes <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0\n 9 Power_On_Hours          0x0032   059   059   000    Old_age   Always       -       36723\n197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0\n<\/code><\/pre>\n\n\n\n<p>Si pour les lignes 5 et 197 on obtient des chiffres sup\u00e9rieurs \u00e0 0 qui vont en croissant, c&rsquo;est qu&rsquo;il est largement temps de changer de disque ! En ligne 9 on obtient le nombre d&rsquo;heures de fonctionnement cumul\u00e9es, dans le cas pr\u00e9sent 36723 heures, soit plus de 4 ans de fonctionnement en continu. Sinon je vous renvoie vers <a href=\"https:\/\/olivier.hoarau.org\/?p=2704\">cette page<\/a> o\u00f9 je d\u00e9taillais le monitoring d&rsquo;un RAID avec MegaCli.<\/p>\n\n\n\n<p>Maintenant j&rsquo;ai d\u00fb modifier mon script de <a href=\"https:\/\/olivier.hoarau.org\/?p=3763\">sauvegarde incr\u00e9mentale<\/a>, car je me rends compte que si mon disque virtuel bas\u00e9 sur un RAID 5 est d\u00e9grad\u00e9, le syst\u00e8me de fichier l&rsquo;est tout autant, et je risque d&rsquo;\u00e9craser une sauvegarde saine par des fichiers corrompus. J&rsquo;ai donc rajout\u00e9 un test d&rsquo;int\u00e9grit\u00e9 qui va v\u00e9rifier si le syst\u00e8me RAID fonctionne correctement.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/bash\n# Script sauvegarde rsync https:\/\/www.funix.org inspir\u00e9 par\n# celui de  Micka\u00ebl BONNARD ( https:\/\/www.mickaelbonnard.fr )\n# sous licence MIT ( http:\/\/choosealicense.com\/licenses\/mit\/ )\n\n# Variables\n# date et heure\njour=`date +%Y-%B-%d`\n# r\u00e9pertoire contenant les logs\nlog=\"\/var\/log\/sauvegarde\"\n\n# r\u00e9pertoires \u00e0 sauvegarder\nlocal1=\"\/data\"\nlocal2=\"\/home\"\nlocal3=\"\/chroot\/data\"\n\n# point de montage du disque de sauvegarde\ndistant1=\"\/media\/sauvegardes\"\ndistant2=\"\/media\/sauvegardes\/base-mysql\"\n\n# fichiers et r\u00e9pertoires \u00e0 exclure de la sauvegarder\nexcludes1=\"\/root\/bin\/exclude-data.txt\"\nexcludes2=\"\/root\/bin\/exclude-home.txt\"\n\n# nom de la sauvegarde dans le journal\necho \"-------------------------------------------------------------\" > $log\/sauvegarde_$jour.log\necho \"Sauvegarde de $local1 , $local2 et $local3 du $(date +%d-%B-%Y)\" >> $log\/sauvegarde_$jour.log\n\n# test de v\u00e9rification de la pr\u00e9sence du disque de sauvegarde\nif [ ! -e \"$distant1\" ]\nthen\n    echo \"Le disque de sauvegarde n'est pas mont\u00e9, arr\u00eat du script\"  >> $log\/sauvegarde_$jour.log\n    exit\nfi\n\n# test de l'\u00e9tat du raid\nraid=$(MegaCli64 -LDInfo -L1 -a0 | grep State)\necho $raid\nif echo $raid | grep Degraded >\/dev\/null 2>&amp;1\nthen\n        echo \"Raid d\u00e9grad\u00e9, arr\u00eat du script\"  >> $log\/sauvegarde_$jour.log\n\texit\nfi\n\necho \"-------------------------------------------------------------\" >> $log\/sauvegarde_$jour.log\n\n# heure de d\u00e9but du transfert dans le journal\necho \"Heure de demarrage de la sauvegarde : $(date +%H:%M:%S)\" >> $log\/sauvegarde_$jour.log\n\necho \"-------------------------------------------------------------\" >> $log\/sauvegarde_$jour.log\n\n# transfert des fichiers\n\nrsync -az --stats --delete-after --exclude-from=$excludes1 $local1 $distant1 >> $log\/sauvegarde_$jour.log\nrsync -az --stats --delete-after --exclude-from=$excludes2 $local2 $distant1 >> $log\/sauvegarde_$jour.log\nrsync -az --stats --delete-after $local3 $distant2 >> $log\/sauvegarde_$jour.log\n\n# -a : mode archivage ( \u00e9quivalent -rlptgoD ).\n# -z : compression des donn\u00e9es pendant le transfert.\n# -- stats donne des informations sur le transfert (nombre de fichiers\u2026).\n# --delete-after : supprime les fichiers qui n\u2019existent plus dans la source apr\u00e8s le transfert dans le dossier de destination.\n\nstatus=$?\n\necho \"\"  >> $log\/sauvegarde_$jour.log\n\n#code d'erreurs rsync\n\ncase $status in\n0) echo Succ\u00e8s >> $log\/sauvegarde_$jour.log;;\n1) echo Erreur de syntaxe ou d'utilisation >> $log\/sauvegarde_$jour.log;;\n2) echo Incompatibilit\u00e9 de protocole >> $log\/sauvegarde_$jour.log;;\n3) echo Erreurs lors de la s\u00e9lection des fichiers et des r\u00e9pertoires d'entr\u00e9e\/sortie >> $log\/sauvegarde_$jour.log;;\n4) echo Action non support\u00e9e : une tentative de manipulation de fichiers 64-bits sur une plate-forme qui ne les supporte pas \\\n ; ou une option qui est support\u00e9e par le client mais pas par le serveur. >> $log\/sauvegarde_$jour.log;;\n5) echo Erreur lors du d\u00e9marrage du protocole client-serveur >> $log\/sauvegarde_$jour.log;;\n6) echo D\u00e9mon incapable d'\u00e9crire dans le fichier de log >> $log\/sauvegarde_$jour.log;;\n10) echo Erreur dans la socket E\/S >> $log\/sauvegarde_$jour.log;;\n11) echo Erreur d'E\/S fichier >> $log\/sauvegarde_$jour.log;;\n12) echo Erreur dans le flux de donn\u00e9e du protocole rsync >> $log\/sauvegarde_$jour.log;;\n13) echo Erreur avec les diagnostics du programme >> $log\/sauvegarde_$jour.log;;\n14) echo Erreur dans le code IPC>> $log\/sauvegarde_$jour.log;;\n20) echo SIGUSR1 ou SIGINT re\u00e7u >> $log\/sauvegarde_$jour.log;;\n21) echo \"Une erreur retourn\u00e9e par waitpid()\" >> $log\/sauvegarde_$jour.log;;\n22) echo  Erreur lors de l'allocation des tampons de m\u00e9moire principaux >> $log\/sauvegarde_$jour.log;;\n23) echo Transfert partiel du \u00e0 une erreur >> $log\/sauvegarde_$jour.log;;\n24) echo Transfert partiel du \u00e0 la disparition d'un fichier source >> $log\/sauvegarde_$jour.log;;\n25) echo La limite --max-delete a \u00e9t\u00e9 atteinte >> $log\/sauvegarde_$jour.log;;\n30) echo D\u00e9passement du temps d'attente maximal lors d'envoi\/r\u00e9ception de donn\u00e9es >> $log\/sauvegarde_$jour.log;;\n35) echo Temps d\u2019attente d\u00e9pass\u00e9 en attendant une connection >> $log\/sauvegarde_$jour.log;;\n255) echo Erreur inexpliqu\u00e9e >> $log\/sauvegarde_$jour.log;;\nesac\n\necho \"-------------------------------------------------------------\" >> $log\/sauvegarde_$jour.log\n\n# heure de fin dans le journal\n\necho \"Jour de fin de sauvegarde : $(date +%d-%B-%Y)\" >> $log\/sauvegarde_$jour.log\necho \"Heure de fin de la sauvegarde : $(date +%H:%M:%S)\" >> $log\/sauvegarde_$jour.log\n\necho \"-------------------------------------------------------------\" >> $log\/sauvegarde_$jour.log\n\nexit<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Pour m\u00e9moire, je dispose d&rsquo;un serveur Dell PowerEdge T310 que j&rsquo;ai achet\u00e9 pour une poign\u00e9e de figues sur ebay, d&rsquo;occasion \u00e9videmment. Il me sert de serveur perso sur mon r\u00e9seau local (serveur de fichiers via NFS et automontage sur les clients, de serveur de mail en r\u00e9ception et en \u00e9mission, et de serveur d&rsquo;authentification, entre &hellip; <a href=\"https:\/\/olivier.hoarau.org\/?p=3985\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">reconstruction d&rsquo;un dell poweredge T310 apr\u00e8s un crASH disque d&rsquo;un raid 5<\/span>  <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false,"_share_on_mastodon":"0"},"categories":[5],"tags":[51,52,50],"class_list":["post-3985","post","type-post","status-publish","format-standard","hentry","category-logiciels-libres","tag-raid","tag-sauvegarde","tag-serveur"],"share_on_mastodon":{"url":"","error":""},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/peOjJ-12h","jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3985"}],"version-history":[{"count":2,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3985\/revisions"}],"predecessor-version":[{"id":3990,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3985\/revisions\/3990"}],"wp:attachment":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3985"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3985"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}