Windows7とUbuntu11.10の両方が(別々のハードドライブに)インストールされた新しいUEFI64ビットシステムを構築しました。 grubメニューからWindows7を起動できるようにしたいのですが、これまでgrubにチェーンロードさせることができませんでした。
Grubメニューを取得した後、コマンドラインのオプションを選択すると、bootmgfw.efiが(hd1,gpt1)/efi/Microsoft/Boot/bootmgfw.efi
にあることがわかります。ただし、チェーンロードしようとするとエラーが発生します。
grub> chainloader (hd1,gpt1)/efi/Microsoft/Boot/bootmgfw.efi
error: invalid signature
LiveCDからLinuxをインストールしたときにUEFIブートオプションを選択したかどうかわからないので、持っているgrubがこの方法でチェーンロードできないのではないかと思います。いずれにせよ、チェーンロードを機能させる方法がわかりません。
質問を書いているときに疑うようになったので、問題はLinuxがMBRを使用してインストールされたため、grubがEFI Windows7をチェーンロードできなかったことです。Linuxを再インストールしました。今回は必ずUEFIブートオプションを選択してください。 BIOSからのLiveCD。 LinuxにEFIgrubがインストールされたので、Windows7のgrubメニューエントリを追加してチェーンロードに成功しました。
このリンク を使用してWindows7のメニューエントリを作成しました。
Sudo vi /etc/grub.d/40_custom
を実行し、ファイルの最後にメニューエントリを追加した後、Sudo update-grub
を実行することを忘れないでください。