Problema con 'grub-mkconfig' en la instalación de Arch Linux: 'grub-mkconfig' no logra conectarse a lvmetad

Problema con 'grub-mkconfig' en la instalación de Arch Linux: 'grub-mkconfig' no logra conectarse a lvmetad

He tenido un problema con la reinstalación deArco Linuxen una máquina con arranque dual con Windows 10.

Por varias razones no relacionadas, decidí hacer una copia de seguridad de todo lo que había en mi antigua instalación de Arch Linux y empezar de nuevo. Tengo el medio en vivo Arch Linux en un USB, así que seguí adelante y arranqué desde allí (enUEFI), formateé mi partición de Linux y revisé la guía de instalación de Arch Linux.

Todo parecía funcionar bien hasta que llegué a la sección "instalar el gestor de arranque". No estaba 100% seguro de qué hacer aquí, ya que la guía para principiantes que usé antes se eliminó en favor de la guía de instalación (mucho, mucho más breve).

Sé que miEFILa partición ya tenía todo el material de GRUB que necesitaba, pero pensé que sería necesario cambiarla para una nueva instalación.

  • Eliminé el /boot/EFI/grub.eficódigo auxiliar y le cambié el nombre /boot/grub/a /boot/grub.bak.
  • yo corrí
    pacman -S grub os-prober
    
    Ejecuté el grub-installcomando de la guía de instalación de Arch con target=x86_64-efiy directory=/boot(mi punto de montaje para mi partición EFI) y luego ejecuté
    grub-mkconfig -o /boot/grub/grub.cfg
    

Aquí es donde empezó mi problema. Al ejecutar el grub-mkconfigcomando me dio un failed to connect to lvmetaderror " " y decía que estaba volviendo al modo alternativo. Produjo con éxito un grub.cfgarchivo en el directorio correcto, sin embargo, no había entradas de menú presentes.

Cuando intento arrancar, todo lo que obtengo es una línea de comando de GRUB. Volviendo a mi medio en vivo de Arch Linux y rehaciendo el archivo arch-chroot, entré /boot/grub.baky copié las secciones de entrada del menú para Arch Linux desde allí, asegurándome de reemplazar el UUID anterior con el que se informa actualmente en mifstabpara mi directorio raíz. Esto hizo que el menú de GRUB volviera a aparecer cuando reinicié, pero al seleccionar Arch Linux me dio un error que decía /vmlinux couldn't be found.

Volví chroota los medios en vivo y volví a ejecutar grub-config. Aún no hay entradas en el menú. encontréesta preguntacon un problema similar que decía que había un problema conocido con el grub-mkconfigscript auxiliar. Esto fue de 2014, por lo que pensé que era poco probable que mi problema fuera el mismo, pero seguí la mejor respuesta allí. La sugerencia fue hacer lo siguiente:

Me encontré con el mismo problema hace un momento y encontré otra solución. Básicamente, se trata de poner el /rundirectorio de hosts a disposición del huésped.

Primero, lo montamos /rundonde el huésped pueda acceder. Asumiré que su partición de instalación está montada en /mnt.

mkdir /mnt/hostrun
mount --bind /run /mnt/hostrun

Luego, ingresamos chrootal invitado y montamos nuestro anfitrión /run/lvmen el del invitado /run.

arch-chroot /mnt /bin/bash
mkdir /run/lvm
mount --bind /hostrun/lvm /run/lvm

Luego podrá ejecutar grub-mkconfigy grub-installsin errores LVM. Esto también hace que los comandos se comporten si estás instalando con LVM, por si sirve de algo.

Cuando termine, recuerde desmontar /run/lvmantes de salir del chroot.

Al hacerlo, en realidad eliminé mi fails to connect to lvmetaderror, pero lo reemplacé con un archivo /dev/sdx not initialized in UDEV. El comando todavía produce grub.cfgentradas sin menú.

Puedo ingresar a Windows seleccionando el Administrador de arranque de Windows en F12el menú "martillo durante el arranque" de mi computadora portátil.

Respuesta1

El problema aparece solo porque estás arch-chrootusando os-prober. Lo que resolvió mi caso fue:

  • Copia de seguridad actual grub.cfg, si aún no la has hecho.
  • Eliminar os-prober( pacman -R os-prober,o puedes desactivarlo)
  • Corrergrub-mkcondig
  • Reiniciar en Arch
  • Instalaros-prober
  • Corre grub-mkconfigde nuevo

Respuesta2

Yo tuve el mismo problema. Esta es una publicación antigua, pero publicaré mi solución alternativa en caso de que ayude a alguien.

Al igual que usted, tenía una copia de seguridad completa, incluido un grub.cfgarchivo de trabajo. Extraje las entradas de menú requeridas del grub.cfgarchivo antiguo y las agregué a /etc/grub.d/40_custom. Luego volví a correr

grub mkconfig -o /boot/grub/grub.cfg

Todo está bien ahora.

os-proberEs un artículo de conveniencia de baja prioridad y no es realmente esencial. Personalmente, no dedicaría mucho tiempo a intentar que funcione. Es una elección personal. A algunas personas les encanta intentar solucionar este tipo de problemas y les agradezco sus esfuerzos, pero otras necesitan que sus sistemas funcionen de verdad, tienen limitaciones de tiempo y necesitan ponerse en funcionamiento.

Con el tiempo, este problema se solucionará mediante software o documentación. Si tiene preguntas sobre cómo configurar las entradas del menú en el 40_customarchivo, encontrará numerosos ejemplos mediante una búsqueda en la web.

información relacionada