Je suis en train de passer d'un raid mdadm classique à un pool zfs, et j'ai fait quelques faux pas dont j'essaie de me remettre.
A l'origine, j'avais deux disques de 4 To dans un miroir Raid 1.
J'ai ensuite mis deux nouveaux disques de 4 To dans la machine et déconnecté les originaux. J'ai créé un zpool avec les nouveaux disques dans un miroir, mais j'ai utilisé /dev/sda
y /dev/sdb
parce que c'est ce que le guide que j'utilisais m'a dit de faire, et je n'ai pas réfléchi.
Alors bien sûr, quand j'ai reconnecté les anciens disques pour copier les données, ils ont pris /dev/sdb
y /dev/sdc
ce qui a fait qu'un de mes deux disques zfs /dev/sdd
ce qui, bien sûr, a perturbé le pool zfs et en a montré un en tant que UNAVAIL
Après avoir travaillé avec quelqu'un en ligne, j'ai réussi à obtenir le pool zfs en mode UUID en zpool export pool
et ensuite zpool import -d /dev/disk/by-uuid pool
Cela m'a ensuite permis de détacher le UNAVAIL
que j'ai ensuite nettoyé, puis réintroduit dans le zfs en tant que miroir du premier en utilisant ses /dev/disk/by-id
. Après quelques jours, il s'est remis en marche avec succès.
Maintenant, j'ai un zpool avec un périphérique ayant un entier long comme identifiant, et un autre avec une chaîne de caractères du type ata-WDC_WD...
. Je voulais qu'ils soient tous sur la même page, donc je prévoyais de détacher le premier disque avec l'identificateur entier, et de le réinsérer en utilisant son identificateur /dev/disk/by-id
. Cependant, la tentative de détachement me donne l'erreur : cannot detach 13419994393693470939: only applicable to mirror and replacing vdevs
.
Ok, donc j'ai essayé de le remplacer par un autre disque, et j'ai eu cette erreur : cannot open '13419994393693470939': name must begin with a letter
Pendant que la piscine fonctionne, j'aimerais que tout soit dans un état cohérent. I pourrait utiliser les deux anciens disques pour créer un nouveau pool et recopier les données, puis détruire l'ancien pool et ajouter ces disques au nouveau (ce qui m'oblige à renommer les pools, ce qui entraîne quelques interruptions de service entre-temps), mais j'espère qu'il existe un moyen de contourner ce problème que je n'ai pas trouvé.