Grub en la partición LVM

Grub en la partición LVM

Básicamente, mi problema era /boot (/dev/sda1), que era una partición muy pequeña (88 Mo).

Con el VolumeGroup disponible en esta máquina, formateé un nuevo volumen LVM (600 Mo).

Luego copié el contenido de /boot/ a la nueva partición LVM (con cpio).

Hice umount /bootalgunos cambios en Fstab para reemplazar la antigua partición /boot.

Finalmente, logré update-grubgenerar correctamente un nuevo archivo grub.cfg. Reinicié y ya estaba funcionando. Estaba pensando que mi nueva partición LVM era correcta, así que con fdisk /dev/sda, elimino el archivo /dev/sda1.

Y ahora tengo Grub Rescue en el arranque.

Incluso con Ubuntu livecd:

grub-install --modules='lvm' /dev/rootvg/bootlv

/usr/sbin/grub-probe: error: cannot find a device for /boot/grub/
No path or device is specified.


grub-install --modules='lvm' /dev/sda5

/usr/sbin/grub-probe: error: cannot find a device for /boot/grub/
No path or device is specified.

Mismo error...

¿Existe una solución para instalar el gestor de arranque Grub en un dispositivo LVM existente?

Respuesta1

Tal vez (soy totalmente nuevo en lvm y grub) necesites instalar grub de esta manera:

grub-install --modules='lvm' --boot-directory=/dev/rootvg/bootlv dev/sda

Para poner grub en MBR y usar /dev/rootvg/bootlv como la partición /boot donde residen los archivos grub.

Pero si el disco es GPT y arranca con BIOS, necesitará una partición especial de 1MiB a 8MiB de tipo BIOS_grub (sin ningún formato, es sin formato para la etapa 2 de grub).

Tengo muchos problemas para iniciar Grub2 desde un [U]EFI con partición EFI y LVM, ya que tengo la partición /boot dentro de un LVM Raid0 de 3 bandas, pero puedo iniciarlo normalmente si está en modo de inicio BIOS.

Particiones que tengo en cada uno de los tres discos duros (todos de idéntico tamaño, posición, etc.), en estilo GPT: GPT1: LVM (grande, resto del espacio del disco duro) GPT2: EFI (512MiB, FAT32) GPT3: bios_grub (8MiB, sin formato - CRUDO)

Creo el vg en todos /dev/sd[ac]1 y dentro de LVM una partición para /boot

Monto /boot con: mount /dev/mapper/bla_bla_bla /boot

Creo un punto de montaje EFI en él (no es realmente necesario, pero ayuda a escribir menos letras en grub2-install)

Monto /dev/sda2 en /boot/efi

Luego agrego lvm a los módulos necesarios, con el comando:

eco GRUB_PRELOAD_MODULES=\"lvm\" >> /dev/default/grub

Luego instalo Grub2 con este comando:

instalación de grub --target=i386-pc /dev/sda

Y listo, desmonte y reinicie en modo BIOS y arranca Grub2.

Importante, antes de desmontar /boot, edite /boot/grub/grub.cfg para que se ajuste a lo que necesita.

Y recuerde que no estoy iniciando un sistema operativo, solo estoy instalando Grub2 dentro de una partición LVM y podré iniciar.

Nota: Si instalo con el objetivo x86_64-efi, muestra dos mensajes y después de que no arranca correctamente en el modo [U]EFI, no se puede acceder a LVM.

PD: Llegué al nivel de conocimiento para crear dos memorias USB diferentes que pueden arrancar en modo [U]EFI y en modo BIOS el bucle SystemRescueCD.iso, pero cuando intento arrancar en Grub2 que reside dentro de LVM tengo problemas si en [U]Modo EFI... no soy un experto... he estado trabajando en Grub2 y LVM, LUKS, etc... mi intención es crear un arranque muy complejo... tres memorias USB en Raid0 LVM sin /boot fuera de LVM y capaz de arrancar en PC solo con [U]EFI y en PC solo con BIOS antiguas, en computadoras mixtas, etc. Estoy en el punto en el que puedo arrancar tanto en [U]FI como en BIOS si /boot está fuera de LVM y en modo BIOS también con /boot dentro de LVM, pero no en [U]EFI con /boot dentro de LVM.

PPD: Me temo que es un ERROR en grub2*.efi que no monta el LVM, así que te recomiendo que arranques en modo BIOS... entre esto había leído algunos artículos de ArchLinux que decían que se puede instalar en LVM sin /partición de arranque y tener / dentro de LVM, pero no obtuve el paso a paso, ni puedo reproducirlo; y no es mi objetivo real, ya que no quiero instalar Linux, solo Grub2... el objetivo real final es tener Linux dentro de un archivo grande que está dentro de una partición LVM que está dentro de particiones LUKS que está en un Partición LVM que utiliza tres HDD físicos en modo raid0 (3 franjas) y arranca desde un USB que tiene modos de arranque [U]EFI y Bios con Grub2 que carga en cadena a Grub2 que está dentro de dicho archivo grande, y que Grub2 cargará el kernel. initram, etc. desde dentro de un archivo tan grande... etc; es posible negar que tenga ese tipo de Linux... si inicio desde el disco duro se mostrará un Linux cifrado, donde en su rootfs está el archivo grande que menciono, pero si inicio desde una memoria USB externa si sabe cómo iniciar Linux dentro de ese archivo. ... modo paranoico: los comandos para realizar dicha carga en cadena estarán en mi mente, no en la memoria USB, en la memoria USB solo habrá un arranque en bucle SystemRescueCD.iso, pero en lugar de seleccionar iniciarlo, escriba c para ir a grub consola y escriba esos comandos para cargar en cadena a Linux dentro del archivo grande que menciono... sé que esto es demasiado, demasiado complejo... pero sin tener el truco de TrueCrypt/VeraCrypt que dependiendo de la frase de contraseña monta el sistema operativo ficticio o el sistema operativo oculto, no tengo otra opción, así que comencé hace algunos meses con los primeros pasos... tengo un USB que arranca en [U]EFI y en PC solo con BIOS (hecho), teniendo Grub2 dentro de un LVM (hecho para Modo BIOS, error en el modo [U]EFI), hay muchos pasos para caminar hacia la izquierda.

Espero que mi esquema y mis comandos puedan ayudarte a descubrir cómo iniciar tu sistema, o al menos darte una opción para buscar.

información relacionada