Aller au contenu
Menu
  • Catégories
    • Geekitude
    • Jeux vidéos
    • Hack ps3
    • Japon
    • Politique et libertés
    • Jeux vidéos adultes
    • Divers
  • FreeDrive
    • Le service
    • La FAQ
  • Partage de connaissance
    • Copie du système
    • Création de paquet (.deb)
    • Petit mémo sur lsof
    • LVM – Les bases
    • LVM – Fonctionnement interne
    • LVM : Trucs et astuces
    • LVM – Les snapshots
    • Chiffrement – Théorie
    • Chiffrement – Pratique
    • 100 pages sur burp, sqlmap et metasploit
    • Présentations IRL
  • Downloads
    • kclean
    • myst
    • lvmiostat
    • Night City 2020
  • contact
    • RSS
    • Télécharger ma clef publique
    • Email
  • Rechercher
  • Catégories
    • Geekitude
    • Jeux vidéos
    • Hack ps3
    • Japon
    • Politique et libertés
    • Jeux vidéos adultes
    • Divers
  • FreeDrive
    • Le service
    • La FAQ
  • Partage de connaissance
    • Copie du système
    • Création de paquet (.deb)
    • Petit mémo sur lsof
    • LVM – Les bases
    • LVM – Fonctionnement interne
    • LVM : Trucs et astuces
    • LVM – Les snapshots
    • Chiffrement – Théorie
    • Chiffrement – Pratique
    • 100 pages sur burp, sqlmap et metasploit
    • Présentations IRL
  • Downloads
    • kclean
    • myst
    • lvmiostat
    • Night City 2020
  • contact
    • RSS
    • Télécharger ma clef publique
    • Email
ATDC

Quand il n’y a plus aucun espoir…

hoper18 juin 201010

Ceux qui viennent de penser au capitaine Flam marquent un point. Mais ce n’est pas d’animés dont nous allons parler aujourd’hui. Nous allons apprendre à sauver un RAID5 quand tout indique que vos données sont perdues.

Dans un premier temps il faut être clair: Je n’ai pas la prétention de vous apprendre à réparer un disque dur 🙂 Si deux de vos disques se sont mis à « claquer », avant qu’un arc électrique « de la mort » ne provoque une surtension et de jolies flammes dans votre tour, et que tout cela s’est terminé par deux disques noires et calcinés, la oui, faites vous une raison, ils sont MORTS 🙂

Heureusement, ce cas de figure n’est pas le plus fréquent. Par expérience, il arrive bien plus souvent qu’un problème électrique quelconque, une défaillance mécanique ou autre, entraîne des soucis lors d’une écriture, provoquant l’éjection du ou des disques du raid. Tant qu’un seul disque est impacté, la reconstruction reste plutôt aisée. Mais que faire lorsque ce sont DEUX disques qui sont brutalement éjectés du raid, que le raid devient donc HS avec deux disques flagués en erreur ? C’est tout le sujet de cet article…

Situation initiale

Nous avons donc un raid software (utilisant mdadm bien sur), avec deux disques en erreur. Ces disques restent néanmoins parfaitement « visibles » par le bios après un reboot. Bref, le problème est venu du contrôleur ou d’ailleurs, les disques eux semblent bon, matériellement parlant.

Ce que j’ai fait, et qui a fonctionné

(Je ne prétend donc pas que cela fonctionnera à tous les coups hein… Mais comme j’en suis à ma deuxième grosse « panne » sur un raid5, et que je suis super content d’avoir pu sauver mes données, je vous en fait profiter 😉

Commencez par examiner chaque disque (ou partition) de la façon suivante :

mdadm --examine /dev/sda1  

Pour chaque disques, notez le résultat des deux champs les plus importants : « state » et « event ». Dans mon cas, tous les disques étaient dans un état « clean » ce qui doit vouloir dire qu’au moment de la panne, les données du raid étaient dans un état cohérent. Si vous avez des disques qui ne sont pas dans un état « clean », dites vous qu’il ne faudra les utiliser qu’en dernier recours. A priori, le raid ne devrait être reconstruit qu’avec des disques en état « clean ».

Regardez maintenant le champs « event ». C’est le nombre d’événements qui ont eu lieu. Autrement dit, si tous vos disques ont le même numéro (ce qui est peu probable…) c’est qu’ils ont tous au même niveau et que vous pouvez tout de suite reconstruire le raid. Mais il est probable que ce ne soit pas le cas. Si vous avez de la chance, et si un seul disque à un numéro différant, alors c’est ce disque la qu’il ne faudra pas prendre en compte pour le « ré-assemblage » du raid.

Personnellement je me suis retrouvé avec deux disques qui avaient le numéro X et deux autres avec le numéro Y. (X étant inférieur à Y). Il m’a semblé plutôt logique de repartir de l’état le plus ancien, celui d’avant la panne donc.

Imaginons que mes 4 partitions s’appelaient /dev/sda1, /dev/sdb1, /dev/sdc1 et /dev/sdd1, et que a et b ai X pour event, alors que c et d avaient Y. Voila la commande magique :

mdadm --assemble --force /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1

Autrement dit, j’ai pris les deux plus ancien, et j’ajoute un des disques avec un event plus récent. (celui qui m’a semblé être le plus « net » d’apres d’autres critère sur lesquelles je n’ai pas trop le temps de m’étaler).

Croisez les doigts, et si vous avez de la chance, mdadm acceptera l’opération, mettra à jour l’ensemble des disques pour qu’ils aient un event identique. Bien sur, il faudra encore ré-ajouter le dernier disque (à condition bien sur qu’il soit lui aussi matériellement hors de cause) :

mdadm --add /dev/md0 /dev/sdd1

Vous n’avez plus qu’a vérifier que vos volumes logiques (si vous utilisez lvm) sont bien revenus, et à faire un fsck de vos systèmes de fichiers 🙂

PS : Et juste parce qu’on ne le répétera jamais assez… un raid ne remplacera jamais une vraie sauvegarde. JAMAIS !

Catégories
  • Geekitude
Article précédent

Au secours -> La suite

Article suivant

HTC=Hyper trop cons

10 commentaires

  1. Jarod&Ced 7 mai 2012Répondre

    Tout simplement MERCI !

    On a eu exactement le même problème sur notre serveur, les disques qui ne mettent en rade sans prévenir, sans même réaliser une mise à jour du système alors bon … La méthode a parfaitement fonctionné. On a utilisé le assemble avec le force (au passage –assemble puis –force, sinon ça ne fonctionne pas) et il a tout recréé, notre système a redémarré ! Il est même en train de resynchroniser le 4eme disque tout seul !

    Merci encore 🙂

  2. hoper 7 mai 2012Répondre

    Et bien vraiment tant mieux si cet article à pu être utile 🙂
    Je l’ai écrit de mémoire, et l’ordre des arguments « assemble » et « force » avait peut être de l’importance en effet… je vais donc prendre en compte votre remarque et modifier l’article en conséquence.

    Pour la suite, n’oubliez pas les sauvegardes !

  3. Yanux 17 novembre 2018Répondre

    Un énorme merci pour ton article, et tes explications dans un vieux post du forum ubuntu-fr !
    Grâce à toi, tout est resynchronisé alors que je croyais tout perdu !
    Ça m’apprendra à monter un truc sensible sans avoir à l’avance compris comment il fontionne, et comment réparer…
    Encore big up à toi 🙂

    • hoper Auteur de l’article6 décembre 2018Répondre

      Merci à toi pour ton message, cela fait toujours plaisir de savoir qu’on a pas passé des heures à écrire un truc pour rien 😉
      Et désolé pour le temps d’approbation, il faut que je comprenne pourquoi mais je n’ai reçu aucun mail me prévenant de messages en attente de modération 🙁

  4. winkle 21 juillet 2019Répondre

    Bonjour,

    Je suis également confronté à un problème de RAID5, consécutif à une coupure de courant.
    Contexte : RAID 5, cinq disques (sda, sdb, sdc, sdd, sde), tous à l’état « clean ».
    Note importante, sda est un disque que j’ai installé récemment, pour étendre le RAID5.
    Les « events » des disques sont les suivants :
    sda : 5659
    sdb : 76640
    sdc : 76635
    sdd : 76640
    sde : 76640

    Dans ce contexte, faut-il mettre sda de côté, réassembler le RAID avec sdb / c / d / e (la synchro se faisant alors sur 76635 events, si j’ai bien compris) puis ajouter sda ?

    Merci !

    • hoper Auteur de l’article22 juillet 2019Répondre

      Bonjour,

      C’est vraiment bizarre pour sda. Pour moi quel que soit la date d’ajout dans le raid il devrait avoir un nombre d’événements identique (il aurait pas commencé a 0 mais au même niveau que les autres). Tu es sur que le raid était clean avant la panne ?

      Quoi qu’il en soit je ferai exactement ce que tu proposes. Forcer le reasemblage des autres d’abord, puis remettre sda dans le raid ensuite.

  5. Mohamed 3 mai 2020Répondre

    Hello,

    Bravo pour ce tuto, il m’a sortie une belle épine du pied. merci beaucoup d’avoir pris le temps de partager tes recherches.

    • hoper Auteur de l’article3 mai 2020Répondre

      Bonjour,

      Je suis bien content que ça ai pu aider quelqu’un d’autre.
      La rédaction de billets prend effectivement beaucoup de temps, et c’est bien ce genre
      de commentaires qui pousse à continuer.

  6. Jeremy 3 août 2021Répondre

    Même en 2021 Y a encore des mercis !!

    Merci merci merci.

    J’avais un disque défectueux depuis un bout de temps , rien de méchant , des erreures de lecture qui me faisait des scans du raid toutes les semaines mais cela n’aboutissait pas.

    Et puis j’ai décider de prendre le taureau par les cornes et de changer le disque défectueux. Pendant la reconstruction c’est un autre qui a lâcher sans crier gare lui …

    Mais après une prise de tête sur l’emergency mode , j’ai réussi a rescanner les disques , tous OK et grâce a ta commande ( que j’avais déjà faite pour la première reconstruction) , il a collaborer et c’est reparti pour la reconstruction…. plus que 600 min… pourvu que cela ne décroche pas !!

  7. hoper Auteur de l’article6 octobre 2021Répondre

    Whaou ! Un autre merci ONZE ANS après la rédaction du billet ! Je ne m’occupe vraiment plus assez de ce blog, quasiment laissé à l’abandon, et raison pour laquelle j’ai mis autant de temps à voir ton message. Mais je suis vraiment content que ce texte puisse encore servir.

    J’en aurai pourtant des trucs à écrire. Mais c’est le temps (et le courage !) qui manque.

Laisser un commentaire Annuler la réponse

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Articles récents

  • Marvel’s Midnight Suns: Le test
  • ChatGPT : Le monde à changé
  • Meilleurs jeux 18+ : Mise à jour 2021
  • Envoyer des mails qui soient acceptés
  • Test des prises connectées DiO

Commentaires récents

  • cjstevens dans Différences entre Maxtra et Maxtra+
  • Les meilleurs jeux 18+ 3/3 Les liens qui vont bien – ATDC dans Meilleurs jeux 18+ : Mise à jour 2021
  • Meilleurs jeux 18+ : Mise à jour 2021 – ATDC dans Meilleurs jeux 18+ : Mise à jour 2020
  • Meilleurs jeux 18+ : Mise à jour 2021 – ATDC dans Les meilleurs jeux 18+ 3/3 Les liens qui vont bien
  • Meilleurs jeux 18+ : Mise à jour 2021 – ATDC dans Les meilleurs jeux 18+ (1/3)

Archives

  • janvier 2023
  • décembre 2022
  • février 2022
  • janvier 2021
  • décembre 2020
  • novembre 2020
  • octobre 2020
  • septembre 2020
  • mars 2020
  • février 2020
  • décembre 2019
  • septembre 2019
  • juillet 2019
  • mai 2019
  • avril 2019
  • février 2019
  • janvier 2019
  • décembre 2018
  • novembre 2018
  • octobre 2018
  • septembre 2018
  • juillet 2018
  • juin 2018
  • avril 2018
  • janvier 2018
  • novembre 2017
  • mai 2017
  • avril 2017
  • mars 2017
  • février 2017
  • janvier 2017
  • octobre 2016
  • mai 2016
  • février 2016
  • octobre 2015
  • septembre 2015
  • août 2015
  • juin 2015
  • mai 2015
  • avril 2015
  • février 2015
  • janvier 2015
  • novembre 2014
  • octobre 2014
  • septembre 2014
  • juillet 2014
  • juin 2014
  • mai 2014
  • avril 2014
  • mars 2014
  • février 2014
  • janvier 2014
  • décembre 2013
  • novembre 2013
  • octobre 2013
  • septembre 2013
  • août 2013
  • juillet 2013
  • juin 2013
  • mai 2013
  • avril 2013
  • mars 2013
  • février 2013
  • janvier 2013
  • décembre 2012
  • novembre 2012
  • octobre 2012
  • septembre 2012
  • août 2012
  • juillet 2012
  • juin 2012
  • mai 2012
  • avril 2012
  • mars 2012
  • février 2012
  • janvier 2012
  • décembre 2011
  • novembre 2011
  • octobre 2011
  • septembre 2011
  • août 2011
  • juillet 2011
  • juin 2011
  • mai 2011
  • avril 2011
  • mars 2011
  • février 2011
  • janvier 2011
  • décembre 2010
  • novembre 2010
  • octobre 2010
  • septembre 2010
  • août 2010
  • juillet 2010
  • juin 2010
  • mai 2010
  • avril 2010
  • mars 2010
  • février 2010
  • janvier 2010
  • décembre 2009
  • novembre 2009
  • octobre 2009
  • septembre 2009
  • août 2009
  • juillet 2009
  • juin 2009
  • mai 2009
  • avril 2009
  • mars 2009

Catégories

  • Autres jeux
  • Delires
  • Divers
  • Geekitude
  • Hack ps3
  • Japon
  • Jeux vidéos
  • Jeux vidéos adultes
  • Non classé
  • Politique et libertés

Méta

  • Connexion
  • Flux des publications
  • Flux des commentaires
  • Site de WordPress-FR

Archives

Articles récents

  • Marvel’s Midnight Suns: Le test
  • ChatGPT : Le monde à changé
  • Meilleurs jeux 18+ : Mise à jour 2021
  • Envoyer des mails qui soient acceptés
  • Test des prises connectées DiO
  • Nouvelle loi gravement liberticide
  • Différences entre Maxtra et Maxtra+
  • Astuces Proxmox

Catégories

Autres jeux (4) Delires (3) Divers (71) Geekitude (172) Hack ps3 (10) Japon (9) Jeux vidéos (26) Jeux vidéos adultes (9) Non classé (5) Politique et libertés (81)

Flus RSS

  •   Les articles

Copyright 2023 © ATDC Tous droits réservés.

Thème Codilight par FameThemes