0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Windows boot managerのエントリがBIOSから消えた時の対処法

Posted at

今回の内容を使用して起きた問題について一切の責任を負いかねます。ご了承ください。また、今回の内容は自分の環境での復元手順で、他の環境だと違う可能性があります。

初めに

最近PCをいじってたらBIOSからWindowsのブートマネージャー?が選択できなくなってたので対処法書いときます。

前提

以下の条件を前提として書いてます。

  • Windowsのブートマネージャーのefiファイル(bootmgfw.efi)が存在する
  • そのPCでLinux系のOSが起動できる(エントリの書き込みに必要です。自分はUbuntu使いました)(一応Ubuntuのライブブートでも修復は可能だと思いますが、試してないのでわかりません。)

環境

自分は

  • Windows10と11
  • Ubuntu
  • Android (BIOSにAndroidと表記がありました。)

を同じディスク内に入れていて、今回はWindowsのエントリが消えました。

復元方法

1, まず、Linux(自分の場合はUbuntu)を起動します。
2, ログインしたら、EFIが入ってるパーティションを以下のコマンドで調べてください

bash
lsblk

結果(自分の場合は以下のような結果になりました。一部省略してます。)(自分の場合は/boot/efiという表記があるsda2にefiを含むパーティションがあります。):

sda      8:0    0   1.8T  0 disk 
├─sda1   8:1    0   450M  0 part 
├─sda2   8:2    0   100M  0 part /boot/efi
├─sda3   8:3    0    16M  0 part 
├─sda4   8:4    0 699.8G  0 part 
├─sda5   8:5    0 214.8G  0 part 
├─sda6   8:6    0 604.5G  0 part 
├─sda7   8:7    0  97.7G  0 part 
├─sda8   8:8    0   245G  0 part /
└─sda9   8:9    0   685M  0 part 

以下のコマンドを実行して、EFiを含むパーティションをマウントしてください。

bash
sudo mkdir /mnt/esp
sudo mount /dev/sda2 /mnt/esp

一応以下のコマンドでefiファイルが/mnt/esp/EFI/Microsoft/Boot/bootmgfw.efiに存在するか確認したほうがいいと思います

bash
ls /mnt/esp/EFI/Microsoft/Boot/bootmgfw.efi

3, 以下のコマンドを実行します。自分は/dev/sda2にEFIファイルが存在するので、以下のコマンドを実行しました。:

bash
sudo efibootmgr -c -d /dev/sda2 -p 2 -L "Windows Boot Manager" -l '\EFI\Microsoft\Boot\bootmgfw.efi'

補足:このコマンドのオプション
-c:新しいブートエントリを作成(Create)

-d /dev/sda2:EFIのシステムパーティションを含むディスク(/dev/sda2はEFIパーティションを含むディスクのパスに置き換えてください。)

-p 2-d /dev/sda2のEFIパーティションの番号。今回は/dev/sda2にEFIを含むパーティションが存在するので、2になってます。

-L "Windows Boot Manager":作成するエントリの名前。Windows Boot Managerの部分は変えても問題ないと思います。

-l \EFI\Microsoft\Boot\bootmgfw.efi:登録するEFIファイルの絶対パス(自分のときは\EFI\Microsoft\Boot\bootmgfw.efiにEFIファイルがありましたが、絶対にここにあるとは限らないので、事前にls /mnt/esp/EFI/Microsoft/Boot/bootmgfw.efiで確認してください。

最後に以下のコマンドを実行して、さっき-Lで指定した名前(ここではWindows Boot Manager)が出ていれば成功していると思います

bash
sudo efibootmgr

5, 再起動します。エントリを追加して初めて再起動するときはBIOSに入らないほうがいいと思います(自分の環境では追加してすぐにBIOSに入ったらフリーズして強制的に再起動かけたらさっきコマンドで追加したエントリが消えてました)

6, 起動したら(自分の時はWindowsが起動しました。)再起動してBIOSに入り、先ほどの-Lで指定した名前のエントリが選択できるかどうか確認してください。(自分はこれで治りました。)

最後に

今回はBIOSからWindowsのエントリが消えた時の対処法について書いてみました。ちなみに自分はこれで治りました。(今回もコマンドとかはChatGPTに生成してもらいました。)
画像スクショ撮るの忘れてました。あとコマンドのオプションのところ間違ってたらごめんなさい。それではまたお会いましょう!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?