デュアルブートを使用していますが、誤って高速ブートオプションをオンにしてしまったため、Windows にアクセスできなくなりました。
現時点ではどちらも実行できないので、Linux からの高速ブートを無効にするか、ブート メニューにアクセスするにはどうすればよいでしょうか?
いくつかの投稿を確認しましたが、修正方法についての情報があまり見つかりませんでした。私は Windows 10 と Arch Linux を使用しています。
高速ブートのため、BIOS 設定に入ることができません。ブート メニューにアクセスする方法がありません。
答え1
「高速ブート」は UEFI 固有の機能であり、BIOS ブート モードでは実際には機能しないため、UEFI ファームウェアがネイティブ モードになっているようです。
ブートメニューにアクセスする
別のOSに再起動したいだけなら、ファームウェアの「高速ブート」を無効にする必要はありません。実行中のOS内で別のブートオプションを選択するには、ブートネクストEFI変数の使用efibootmgr --bootnext
:
# efibootmgr
BootCurrent: 0002
Boot0002* Arch Linux
Boot0003* Windows Boot Manager
# efibootmgr --bootnext 0003
# reboot
bcdedit /enum firmware
それぞれの BCD エントリ ID を見つけてBootNext を設定することで、 Windows でも同じことを実現できますbcdedit /set {fwbootmgr} bootsequence LINUX_ID
。
これは一時的な変更であることに注意してください。新しいデフォルトとして選択を保存するには、起動順序を使用するefibootmgr --bootorder
か、同様にdisplayorder
Windows で bcdedit を介してプロパティを設定します。
ファームウェア設定へのアクセス
高速ブートモードを無効にするファームウェア設定画面(「BIOS設定」)にアクセスするには、Os適応症EFI変数の使用systemctl reboot
:
# systemctl reboot --firmware-setup
または、systemd を使用しない場合 (残念ながら、Linux 上の efibootmgr にはまだこのための便利なオプションがありません)。
# var=OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c
# printf '\7\0\0\0\1\0\0\0\0\0\0\0' > /sys/firmware/efi/efivars/$var
# reboot
Windows で同等のものは次のようになりますshutdown /r /t 0 /fw
。または、Shift キーを押しながら「スタート > 再起動」オプションをクリックしたときに表示されるメニュー項目です。