私はラップトップ(Asus Zenbook UX305)のウィンドウで基本OSをデュアルブートしようとしていました。そのために、Windowsディスクマネージャーを使用してWindowsパーティションを縮小し、エレメンタリーインストーラーの[Windowsと一緒にインストール]オプションを使用してLinuxパーティションを自動的にセットアップしました。インストール後に再起動すると、grubコンソールになりました。コマンドを使用して手動でLinuxを起動できました
grub> set root=(hd0,gpt4)
grub> linux /boot/vmlinuz-3.19.0-26-generic root=/dev/sda4
grub> initrd /boot/initrd.img-3.19.0-26-generic
grub> boot
コマンドを実行していることがわかりました
grub> configfile (hd0,gpt4)/boot/grub/grub.cfg
発生するはずの通常のGRUBメニューをロードします。そのため、設定ファイル自体に問題はないようです。ルートとプレフィックスが(hd0、gpt1)にあることもわかりました。
grub> set root=(hd0,gpt4)
grub> set prefix=(hd0,gpt4)/boot/grub
grub> insmod normal
grub> normal
通常のgrubメニューもロードしました。おそらく問題は、grubが間違ったパーティションを探しているということですか?
私のBIOSでは、grubを使用するか、Windowsブートローダーを使用してブートするかを選択できます。 Windowsブートローダーを選択すると、問題なく直接Windowsが起動します。
ただし、再起動後に修正を適用する方法はありません。 grub-install /dev/sda
を再実行し、grub-mkconfig
を使用して構成ファイルを再作成し、Ubuntuブート修復guiツールを使用してみましたが、どれも機能しませんでした。どちらか一方または両方のOSを再インストールせずにこの問題を修正する方法はありますか?可能であれば、Windowsを再インストールする必要はありません。
GRUBメニューは/boot/efi/EFI/grub/
の不正なefiファイルを読み込んでいるため、ロードに失敗したようです。
ElementaryOSを起動したら、次のコマンドを実行して、そのフォルダー内のgrubx64.efi
ファイルを置き換えます。
cd /boot/efi/EFI/grub
Sudo cp grubx64.efi grubx64.efi.backup (just in case)
Sudo rm grubx64.efi
Sudo cp /boot/grub/x86_64-efi/grub.efi /boot/efi/EFI/grub/grubx64.efi
この解決策は、報告されたelementaryOSのバグについてユーザーが話し合った結果です。詳細は以下をご覧ください https://bugs.launchpad.net/elementaryos/+bug/1492801
私はあなたとまったく同じ問題に直面し(elementaryOS Freya 0.3.1をWindows 10と一緒にインストールしました)、この解決策を見つける前に、あなたが説明した手順に従いました。
修正を適用する前に、Windows 10で高速起動を無効にしていましたが、効果があるかどうかはわかりません。 http://www.tenforums.com/tutorials/4189-fast-startup-turn-off-windows-10-a.html を参照してください
さらに、これを機能させるには、セキュアブートを無効にする必要がありました。セキュアブートを有効にすると、UX305がGRUBを完全にロードできませんでした。起動時に最初の画面でEscキーを押し、次にセットアップに入り、そこからセキュアブートをオフにします。または、セキュアブートを機能させる方法があるかもしれませんが、今のところこの解決策に満足しています-私のUX305がGRUBメニューにWindowsオプションを追加してロードします!
同じ問題が解決策を見つけました:
1)グラブレスキューモードで「set」を実行します
2)それは私にprefix =(hd1、gp1)/ boot/efi/EFI/ubuntu /を示します
3)私の場合、KDE NEONがあるため、/ boot/efi/EFI/ubuntu /フォルダーは存在しませんが、// boot/efi/EFI/neon /フォルダーは存在します。 SO問題は、存在しないフォルダを指していることです
4)それで、すべてのフォルダ/ boot/efi/EFI/neon /を/ boot/efi/EFI/ubuntu /にコピーしました。それはトリックをしました
私の場合も、hd1、gpt5を指す必要があるため、誤りです(hd1、gp1)。しかし、私はそれを変更し、それはうまくいきました。
変更したのは、msdos形式を使用するためのファイル/boot/efi/EFI/ubuntu/grub.cfgです。
search.fs_uuid xkjdiw-18e9-4d0a-ac55-2skjdh8425f root hd1,gpt5
set prefix=($root)'/grub'
configfile $prefix/grub.cfg