GNU/Linux >> Tutoriels Linux >  >> Linux

Dois-je utiliser `mdadm –create` pour récupérer le raid ?

Il y a ce gars qui n'arrête pas de me dire qu'il ne faut pas utiliser mdadm --create récupérer nos matrices RAID, que c'est pire que le mal, est une erreur. Pourquoi donc? Je veux dire que je devrais remettre mon RAID en marche, non ? Que dois-je utiliser à la place si --create est une erreur ?

Réponse acceptée :

Il n'y a rien de mal avec --create – si vous savez ce que vous faites.

Le seul problème est :Vous ne savez pas.

Lorsque vous créez un RAID, la commande est généralement quelque chose de court, comme :

mdadm --create /dev/md42 --level=5 --raid-devices=3 /dev/sdx1 /dev/sdy1 /dev/sdz1

C'est simple, n'est-ce pas ?

Sauf que ce n'est pas le cas, vraiment. RAID a beaucoup plus de variables. Il y a un décalage de données, une taille de bloc, une version de métadonnées, et n'oublions pas l'ordre des lecteurs qui est facile à se tromper lors d'une recréation, car les lettres de lecteur peuvent changer avec le temps.

Voici ce qu'est un bon --create la commande pourrait ressembler à :

mdadm --create /dev/md42 --assume-clean 
    --level=5 --chunk=512K --metadata=1.2 --data-offset=2048s 
    --raid-devices=3 /dev/sdz1 missing /dev/sdy1

Et quoi que cela vous donne, vous devriez le tester en lecture seule. Et ce n'est peut-être pas tout. Saviez-vous qu'il existe également plusieurs configurations RAID différentes ? --create est la goutte d'eau qui fait déborder le vase et les pièges ne sont pas évidents. Idéalement, vous devriez sauvegarder tous les disques, ou au moins les zones de métadonnées, ou opérer sur une superposition de copie sur écriture.

Pour tout ce que vous ne fournissez pas, mdadm utilise les paramètres par défaut. Malheureusement, ceux-ci ne sont pas gravés dans la pierre, pratiquement tous ont changé dans le passé, et ils sont susceptibles de changer à nouveau à l'avenir.

Ainsi, lorsque vous utilisez --create pour la récupération, vous devez très bien comprendre le RAID, et vous devez savoir exactement à quoi ressemblait votre ancien RAID. Et puis vous devez ajouter --assume-clean ou laissez l'un des disques comme missing , juste au cas où vous auriez fait une erreur de toute façon. Vous devez également effectuer une sauvegarde, au moins du début et de la fin du disque afin de pouvoir récupérer des métadonnées écrites au mauvais emplacement.

Dans la plupart des cas, vous avez d'autres options. --assemble --force en est un, mais il a ses propres pièges. Vous devriez --examine d'abord et si l'un des disques est plus obsolète que les autres, vous ne devez pas l'inclure dans l'assemblage. Il y a aussi --build ainsi que dmsetup pour raid qui n'utilise pas de métadonnées et peut vous permettre d'accéder à vos données. Cela ne veut pas dire qu'il est sûr, cependant - vous écrivez dessus, vous perdez des données si les paramètres que vous avez choisis sont incorrects.

Connexe :bonne syntaxe pour l'utilisation d'awk en combinaison avec une autre commande dans xargs sh –c ?

En général, la récupération de données est un vaste domaine. Vous avez besoin d'expérience pour pouvoir décider de la bonne marche à suivre. Évitez le problème si possible ; effectuez des sauvegardes, documentez votre configuration et surveillez vos disques afin que votre RAID ne meure pas en premier lieu.


Linux
  1. Comment utiliser la commande Linux grep

  2. Comment utiliser la commande history sous Linux

  3. Comment utiliser la commande basename ?

  4. Vérifier la version de Wordpress utilisée

  5. Comment utiliser dos2unix ?

Comment utiliser la commande nmap

7 façons d'utiliser la commande Linux Head

Terraform vs Ansible :quelle est la différence et lequel utiliser ?

Qu'est-ce que la fonctionnalité de la communauté ONLYOFFICE et pourquoi devriez-vous l'utiliser ?

Utilisation de la commande grep sous Linux

Les 20 meilleurs clients IRC pour Linux que vous devriez utiliser tous les jours