GRUB не может найти Windows ESP

GRUB не может найти Windows ESP

У меня 2 ESP, что может быть проблемой, но я думаю, что это можно исправить, поскольку я могу вручную загрузиться с помощью GRUB SET. В любом случае, это моя настройка. Пожалуйста, проигнорируйте некоторые возможные опечатки, так как я перепечатываю на другой машине:

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

внутри 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

поэтому при записи GRUB я использую:

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

Это приводит к следующей ошибке при попытке загрузки Windows:

error: unspecified search type
error: file '/EFI/Microsoft/Boot/bootmgfw.efi' not found.

Итак, я захожу в командную строку GRUB:

grub> set
...
cmdpath=(hd1,gpt6)/EFI/grub
...
grub> search.fs_uuid 4C77-A2D0
 hd1,gpt2

Я на hd1 вместо hd0 и grub смог найти по UUID. Я попытался изменить строки подсказок menuentry для поиска, hd1,gpt2но все равно та же ошибка. Я также попробовал drivemap -s hd1. Он все еще не может найти раздел.

Мой вопрос: почему GRUB показывает другой hd#. И как заставить его найти раздел?

решение1

Я забыл # grub-mkconfig -o /boot/grub/grub.cfgпосле редактирования /etc/grub.d/40_custom......

Связанный контент