Невозможно обнаружить / загрузить Windows 10 после преобразования Ubuntu из MBR + BIOS в GPT + EFI

TL; DR
Как загрузиться с установкой EFI GRUB на диск A, установкой BIOS для Windows 10 на диск B?

Длинное объяснение
os-prober больше не обнаруживает Windows после миграции Ubuntu с MBR + BIOS на GPT + EFI.

Ситуация с дисками немного сложная:

sda                    1,8T                              
└─sda1      ext4       1,4T /media/Steam                 Steam
sdb                  931,5G                              
├─sdb1      vfat       512M                              
├─sdb2      ext4       125G                              home
├─sdb3      ext4     774,5G /media/Dati_ext4             Dati_ext4
└─sdb4      ext4      31,5G                              Ubuntu18.04
sdc                  232,9G                              
├─sdc1      ntfs       100M                              
├─sdc2      ntfs        59G                              Win10
├─sdc3      ntfs       483M                              
└─sdc4      ntfs     172,9G                              Dati_NTFS
nvme0n1                477G                              
├─nvme0n1p1 ext4      62,4G /                            Ubuntu19.10
├─nvme0n1p2 vfat       200M /boot/efi                    EFI
└─nvme0n1p3 ext4     322,1G /home                        home
  • У меня 4 диска (1 NVMe и 3 SSD).
  • До сегодняшнего дня все они использовали MBR, а UEFI загружал NVMe в устаревшем режиме.
  • У меня 2 установки Ubuntu (19.10 и 18.04) и 1 Windows 10.
  • Каждая ОС имеет свой собственный диск (и четвертый диск, поскольку ОС не установлена). Это означает, что каждая ОС имела свой собственный загрузчик, установленный в MBR каждого диска.
  • GRUB также мог видеть все остальные ОС, поэтому с GRUB NVMe я смог загрузить любую из 3 ОС.

Сегодня я решил преобразовать установку NVMe Ubuntu из MBR + BIOS в GPT + EFI. Поскольку я не трогал другие диски, я надеялся, что GRUB обнаружит другие ОС и загрузит их нормально.

Преобразование работало нормально, и я могу загрузиться в Ubuntu 19.10. Но os-prober распознают Ubuntu 18.04, но не Windows 10.

Я хотел бы либо найти исправление для os-prober, чтобы оно распознавало Windows, либо вручную указать конфигурацию GRUB для загрузки установки Windows MBR + BIOS.

1120 Я уже попробовал кое-что для второго подхода, но это не сработало. Я добавил это в /etc/grub.d/40_custom установки EFI:

menuentry 'Windows 10 (su /dev/sdc1)' --class windows --class os {
    insmod part_msdos
    insmod ntfs
    set root='hd2,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd2,msdos1 --hint-efi=hd2,msdos1 --hint-baremetal=ahci2,msdos1  C08E2C498E2C3A74
    else
      search --no-floppy --fs-uuid --set=root C08E2C498E2C3A74
    fi
    parttool ${root} hidden-
    drivemap -s (hd0) ${root}
    chainloader +1
}

Я взял это из работающей установки Ubuntu 18.04 GRUB MBR + BIOS.

Но когда я выбираю Windows 10 из меню GRUB, я получаю только эту ошибку:

Setting partition type to 0x7
error: can't fine command `drivemap'.
error: invalid EFI file path.

Можно ли даже загрузить с EFI GRUB установку BIOS на другой диск Windows 10?

1
задан 28 September 2019 в 01:28

1 ответ

Короткий ответ, Вы не можете загрузить Windows прежней версии от личинки UEFI. Однажды начальные загрузки личинки, режим начальной загрузки был установлен на UEFI, и Ваш Windows находится в режиме прежней версии, не, загружаются - также. Можно выбрать окна устройств, идет (по-видимому, с его собственными загрузчиками), и загрузите это из меню начальной загрузки EFI (некоторая функциональная клавиша при включении питания, чтобы позволить Вам выбирать устройство загрузки / ОС). У Вас могли быть или другая установка личинки или начальная загрузка Windows успешно от того второго диска, который будет в режиме прежней версии. Попытка, просто загружающая второй диск, Windows может подойти.

3
ответ дан 23 October 2019 в 10:12

Другие вопросы по тегам:

Похожие вопросы: