Grubをgrub2に更新したため、Windowsを起動するオプションが表示されなくなりました(残念ながら、仕事で使用する必要のある独自のMSIEブラウザープラグインでは必要になる場合があります)。
関連する/boot/grub/menu.lst
部分:
### END DEBIAN AUTOMAGIC KERNELS LIST
# This is a divider, added to separate the menu items below from the Debian
# ones.
title Other operating systems:
root
# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/hda1
title Windows NT/2000/XP
root (hd0,0)
savedefault
makeactive
chainloader +1
ただし、これはもう表示されません。 /boot/grub/grub.cfg
には、次のようなエントリがいくつかあります。
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-AMD64' --class debian --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd1,msdos1)'
search --no-floppy --fs-uuid --set e638c434-4884-412f-a141-2c194f881fae
echo 'Loading Linux 2.6.32-5-AMD64 ...'
linux /boot/vmlinuz-2.6.32-5-AMD64 root=UUID=e638c434-4884-412f-a141-2c194f881fae ro quiet
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-5-AMD64
}
そのファイルを変更する必要がありますか?もしそうなら、Windowsブートの正しい構文は何ですか?そうでない場合、何が問題になる可能性がありますか?
これはUbuntuに基づいていますが、Debianのgrub2-packageにも有効であるはずです。
/boot/grub/grub.cfg
は、/usr/sbin/update-grub2
を実行するたびに、またはカーネルの更新後に呼び出されるたびに上書きされます。 grub2は、/etc/grub.d/30_os-prober
を介してWindowsのインストールを自動検出し、ブートメニューに追加する必要があります。ただし、カスタムエントリは/etc/grub.d/40_custom
で作成する必要があります
更新:
/etc/grub.d/40_custom
に以下を追加することにより、Windowsローダーを手動で追加することができます。
menuentry "Windows on /dev/hda1" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set YOURUUID
chainloader +1
}
「YOURUUID」は、Windowsパーティションの [〜#〜] uuid [〜#〜] です。 ls -l /dev/disk/by-uuid/ | grep hda1
を実行することで取得できます。ファイルを編集した後、「Sudoupdate-grub2」を実行して新しいgrub.cfgを生成します。
os-prober
に依存しますが、インストールされていない可能性があります。その場合は、次のようにします。
Sudo apt-get install os-prober
...そしてSudo update-grub2
を再度実行します。
Wrikkenのソリューションも私のために働いた。指示に従って簡単に逆流させています。
ステップ1
Sudo apt-get install os-prober
これは次の方法でテストできます。
Sudo os-prober
これは、私にとって、出力を提供します:
/dev/sda1:Microsoft Windows XP Professional:Windows:chain
ステップ2
Sudo update-grub2