TL; DR
どのようにしてEFIから起動できますかGRUBディスクAへのインストール、ディスクBへのWindows 10 BIOSインストール)
長い説明os-prober
は、UbuntuをMBR + BIOSからGPT + EFIに移行した後、Windowsを検出しなくなりました。
私のディスク状況は少し複雑です:
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
今日、私はUbuntuのNVMeインストールをMBR + BIOSからGPT + EFIに変換することにしました。他のディスクには触れなかったので、GRUBが他のOSを検出して通常どおりに起動することを期待しています。
変換は正常に機能し、Ubuntu 19.10で起動できます。しかしos-prober
はUbuntu 18.04を認識しますが、not Windows 10を認識します。
私がやりたいのは、os-prober
の修正を見つけてWindowsを認識させるか、GRUB構成を手動で指定してWindows MBR + BIOSインストールを起動することです。
私はすでに2番目の方法で何かを試しましたが、うまくいきませんでした。これをEFIインストールの/etc/grub.d/40_custom
に追加しました:
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インストール。
しかし、GRUBメニューからWindows 10を選択すると、次のエラーが発生します。
Setting partition type to 0x7
error: can't fine command `drivemap'.
error: invalid EFI file path.
EFIから起動することも可能ですかGRUB Windows 10の別のディスク上のBIOSインストール
短い答えですが、UEFI grubからレガシーWindowsを起動することはできません。 GRUBが起動すると、起動モードはUEFIに設定され、Windowsはレガシーモードであるため起動できません。 Windowsがオンになっているデバイスを選択し(おそらく独自のブートローダーを使用)、EFIブートメニューから起動できます(起動時にファンクションキーを押して、ブートデバイス/ OSを選択できます)。別のGRUBインストールを使用するか、その2番目のディスクからWindowsを正常に起動して、レガシーモードにすることができます。 2番目のディスクを起動するだけで、Windowsが起動する場合があります。