私のシステムに2番目のディスクを追加し、ここにlinux-installation + grubをコピーしました。今、私のシステムには2つのディスクが含まれています。
hd0:
sda5: linux
hd1: (old system with dualboot)
sdb2: windows
sdb5: linux
hd1から起動すると(Biosの起動メニューまたはhd0の切断)、Windowsはすぐに起動しますが、hd0から起動してWindowsから起動することを選択すると、点滅しているカーソルが付いた黒い画面のみが表示されます。
hd0/grub.cfg (動作しない)
menuentry 'Windows 7 (loader) (/dev/sdb1)' --class windows --class os $menuentry_id_option 'osprober-chain-9C567F24567EFE78' {
insmod part_msdos
insmod ntfs
set root='hd1,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1 9C567F24567EFE78
else
search --no-floppy --fs-uuid --set=root 9C567F24567EFE78
fi
parttool ${root} hidden-
chainloader +1
}
hd1/grub.cfg (有効)
menuentry 'Windows 7 (loader) (/dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-9C567F24567EFE78' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 9C567F24567EFE78
else
search --no-floppy --fs-uuid --set=root 9C567F24567EFE78
fi
parttool ${root} hidden-
chainloader +1
}
PS:私のシステムはもう少し古く(athlon x4)、UEFIではなく汎用BIOSがあります。
どのようなアイデアやデバッグ情報をさらに得る方法はありますか?
それとも、Windowsを常に最初のハードドライブにインストールする必要があるという制限がありますか? (2016年にも)
解決策:
menuentry 'Windows 7 cust' --class windows --class os $menuentry_id_option 'osprober-chain-9C567F24567EFE78' {
insmod part_msdos
insmod ntfs
set root='hd1,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1 9C567F24567EFE78
else
search --no-floppy --fs-uuid --set=root 9C567F24567EFE78
fi
###parttool ${root} hidden-
drivemap -s (hd0) ${root} ### intern disk swap
chainloader +1
}
答え1
最初のドライブ以外のドライブからgrubを使用してWindowsを起動するのは少し面倒です。ディスクを交換する必要があります。
最初のハードドライブ以外のハードドライブにDOS(またはWindows)をインストールした場合、オペレーティングシステムは最初のハードドライブ以外のディスクから起動できないため、ディスク交換技術を使用する必要があります。 GRUBで使用される回避策は、次のドライブマップ(drivemapを参照)コマンドです。
drivemap -s (hd0) (hd1)
詳細については、次を参照してください。https://www.gnu.org/software/grub/manual/html_node/DOS_002fWindows.html#DOS_002fWindows