
Tengo 2 ESP, lo cual puede ser el problema, pero creo que es posible solucionarlo ya que puedo iniciar manualmente usando GRUB SET. De todos modos esta es mi configuración. Por favor ignore ciertos posibles errores tipográficos ya que estoy reescribiendo en otra máquina:
fdisk -l
/dev/sda1 Windows recovery
/dev/sda2 EFI system
/dev/sda3 Microsoft reserved
/dev/sda4 Microsoft basic data
/dev/sda5 Windows recovery
/dev/sda6 EFI System (linux)
/dev/sda7 Linux fs
dentro de linux:
# grub-probe --target=fs_uuid /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
4C77-A2D0
# grub-probe --target=hints_string /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi
--hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2
entonces en la entrada de GRUB uso:
insmod part-gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 4C77-A2D0
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
Esto provoca el siguiente error al intentar iniciar Windows:
error: unspecified search type
error: file '/EFI/Microsoft/Boot/bootmgfw.efi' not found.
Entonces voy a la línea de comando de GRUB:
grub> set
...
cmdpath=(hd1,gpt6)/EFI/grub
...
grub> search.fs_uuid 4C77-A2D0
hd1,gpt2
Estoy en hd1 en lugar de hd0 y grub pudo encontrarlo mediante UUID. Intenté modificar las cadenas de sugerencias de mis entradas de menú para buscar hd1,gpt2
, pero sigue siendo el mismo error. También lo intenté drivemap -s hd1
. Todavía no puede encontrar la partición.
Mi pregunta es por qué GRUB muestra un número de disco duro diferente. ¿Y cómo hago para que ubique la partición?
Respuesta1
Se me olvidó # grub-mkconfig -o /boot/grub/grub.cfg
después de editar /etc/grub.d/40_custom
...