J'ai migré toutes les étendues LV d'un PV à un nouveau PV. Les anciens et les nouveaux PV étaient des périphériques chiffrés par LUKS. root est l'un des LV migrés.
Cela ne fonctionnait pas car, après la migration, boot n'essayait même pas de déverrouiller le nouveau PV de LUKS. Il demandait un mot de passe pour les anciens LUKS, qui n'existent plus, ces lecteurs ont déjà été réaffectés et remplacés.
Cependant, si j'utilise les paramètres du noyau rd.auto = 1 et supprime les anciens paramètres du noyau qui spécifient l'UUID de l'ancien PV, je peux obtenir Linux pour démarrer et demander le bon mot de passe. Pourtant, cela ne fonctionne toujours pas.
Avant de donner le mot de passe, il est dit
dracut-initqueue /usr/bin/crypt-run-generator: line 14: cryptsetup: command not found
Unnecessary job for dev-mapper-luks-<UUID of new PV LUKS> was removed
Donc, il trouve automatiquement la nouvelle partition LUKS et je vais le déverrouiller, mais ce n’est que après avoir renoncé à trouver des systèmes de fichiers utilisables. Pourquoi ferait-il cela?
À ce stade, le processus de démarrage s'arrête en attendant indéfiniment la fin des travaux requis. J'ai oublié tous leurs noms, mais l'un d'entre eux est cryptsetup.target et je pense que l'un d'eux était en train de monter racine. Donc, cela a du sens.
Mais, je ne sais pas comment configurer grub et dracut pour que cela fonctionne. C'est comme si initrd avait une configuration lui indiquant de ne démarrer LVM que sur l'ancien PV. Lorsque je lance une image en direct, tous les volumes logiques sont présents et les données sont superbes.
De quelle configuration grub2 (mode efi) et configuration dracut ai-je besoin pour résoudre ce problème?
EDIT Depuis que j'ai posté, j'ai essayé beaucoup de choses. J'ai trouvé des paramètres de kerel que je pense avoir raison, mais ils ne semblent pas faire de différence. J'ai créé une nouvelle image initrd avec dracut, à laquelle j'ai fermement ajouté cryptsetup et un nouveau fichier / etc / crypttab corrigé. Cela a semblé aider et toutes les erreurs ont maintenant disparu ... mais cela ne démarre toujours pas! En utilisant les dernières options et initrd je l' ai essayé, le processus de démarrage ne pas demander une passphrase. Il dit "Envoi à plymoth pour la demande de mot de passe" mais cela ne fonctionne plus.
Maintenant, l’une des options du noyau que j’ai essayée était rd.shell. Cela m'a donné un obus dracut après son expiration, incapable de trouver la racine. Depuis le shell dracut, je peux démarrer le PV mdadm RAID avec --assemble --scan, luksOpen avec mon mot de passe, et tous les LV sont là. Donc, je ne comprends toujours pas ce que ça veut dire.