Quelles sont les fonctionnalités connues prises en charge (et non prises en charge) pour le module GRUB2 lvm dans Debian 9 ? Par exemple. prend-il en charge le format de métadonnées actuel "lvm2" ?
Existe-t-il une commande ou une configuration supplémentaire requise pour accéder aux volumes logiques LVM à partir de GRUB, même après avoir chargé GRUB lvm
module ?
GRUB semble prendre en charge MD-raid, mais qu'en est-il lorsque LVM s'exécute au-dessus de MD-raid, cela affecte-t-il les questions ci-dessus d'une manière ou d'une autre? Est-ce que grub2-mkconfig
devrait prendre en charge /boot
sur MD+LVM ?
Contexte
J'ai besoin de migrer des fichiers d'un disque existant vers le RAID, donc je n'utilise pas le programme d'installation pour configurer les choses. C'est pour Debian Stretch. L'idée générale est
- copiez votre système existant vers un RAID dégradé sur le nouveau disque
- démarrer le système RAID
- vérifiez très attentivement et demandez ensuite au RAID d'avaler l'ancien disque.
Je suis conscient que ce n'est pas nécessairement le plus sensé d'idées.
Je cherche à démarrer à partir de LVM sur MD-raid. Je ne prendrai pas la peine de jouer avec /boot en tant que partition MD-raid séparée, si je n'en ai pas besoin. Il semble que c'est ce que l'installateur Debian était utilisé pour faire dans https://wiki.debian.org/DebianInstaller/SoftwareRaidRoot
J'ai créé un LV au-dessus de MD-raid et j'y ai copié le système de fichiers racine. Mais contrairement à la configuration pure MD-raid décrite sur le wiki RAID, grub-mkconfig
n'a pas trouvé la nouvelle instance Linux.
J'ai démarré à l'invite GRUB de l'instance Linux d'origine, pour voir ce qu'elle pouvait faire. Je peux charger le part_gpt
, mdraid1x
, et lvm
modules. Il n'y a pas de lvm2
module. Cela a trouvé avec succès des périphériques pour mes partitions GPT et le périphérique MD (md/linux)
j'avais créé. Mais il n'a trouvé aucun des périphériques LVM que j'avais créés, qui auraient dû ressembler à (lvm/vg_linux/lv_root)
.
La probe
la commande ne fonctionne pas du tout sur (hd1,gpt1)
ou (md/linux)
; il dit juste error: unknown filesystem
. Il n'est donc pas capable d'identifier le MD-raid, sans parler des éléments LVM, même si GRUB accède déjà au MD-raid.
Réponse acceptée :
GRUB2 sur Debian 9 est définitivement capable de lire à partir d'un volume LVM2 normal ("linéaire") sur MD raid1 (métadonnées v1.2). Cependant, j'ai trouvé que cela ne semble fonctionner que si vous utilisez insmod lvm
avant insmod mdraid1x
.
Si je les charge dans l'ordre inverse, cela change l'ordre des appareils affichés par le GRUB ls
(!), mais cela n'ajoute pas les périphériques lvm à la liste.
Configuration automatique standard
Pour obtenir grub-mkconfig
(qui est le backend pour update-grub
de Debian ) pour détecter la deuxième instance Linux comme suggéré sur la page wiki RAID, il suffisait d'installer le os-prober
emballer. (Je suppose que le programme d'installation Debian aurait installé ce paquet automatiquement s'il avait vu un deuxième système d'exploitation lors de l'installation initiale du chargeur de démarrage. En particulier s'il y avait une installation Windows).
Fait intéressant, la configuration générée a chargé lvm
après mdraid1x
. Cependant, il a également chargé diskfilter
avant mdraid1x
. Il a également utilisé le lvmid/...
caché chemin au lieu de (lvm/...)
. Pour notre santé mentale, ignorons cette dernière différence et imaginons que le premier diskfilter
load est probablement ce qui permet à cette configuration de fonctionner :).
Je ne sais pas où vous êtes censé apprendre l'une ou l'autre de ces méthodes :-/.