PCのEFIブートメニューから古いデバイスを消す

2020年4月26日日曜日

CentOS7 Windows

t f B! P L
外付けUSBディスクに同じOSを複数インストールして使い分けていると、BOOTメニューに 同じ名前のエントリが複数存在することになり、どれがどれだかわからなくなることがあります。BOOTメニューで不要になった古いエントリは、消去することができます。
同じエントリが複数

CentOS7の場合

efibootmgrで不要なブートメニューのエントリを消去できます。まず、エントリを表示します。

$ efibootmgr
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0004,0003,0000,0001,0002
Boot0000* Windows Boot Manager
Boot0001* Onboard NIC (IPV4)
Boot0002* Onboard NIC (IPV6)
Boot0003* CentOS Linux
Boot0004* CentOS Linux
-vオプションを付けると、詳細情報が表示されます。

$ efibootmgr -v
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0004,0003,0000,0001,0002
Boot0000* Windows Boot Manager HD(1,GPT,xxx)/File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS
Boot0001* Onboard NIC (IPV4) /Pci(0x1c,0x0)/Pci(0x0,0x0)/MAC(xxx)/IPv4(0.0.0.00.0.0.0,0,0)..BO
Boot0002* Onboard NIC (IPV6) /Pci(0x1c,0x0)/Pci(0x0,0x0)/MAC(xxx)/IPv6([::]:<->[::]:,0,0)..BO
Boot0003* CentOS Linux VenHw(xxx)
Boot0004* CentOS Linux HD(1,GPT,xxx)/File(\EFI\centos\shimx64.efi)
[chopin@DESKTOP-NOHR835 ~]$ 
消去したいエントリのBoot Orderの番号を確認します。-bと-Bオプションでエントリを削除できます。 0003番と0004番を消去する場合のコマンドは、次のようになります。

$sudo efibootmgr -b 0003 -B
$sudo efibootmgr -b 0004 -B
リブートすると、BOOTメニューからエントリが削除されているのが確認できます。
エントリが削除されたことを確認

Windowsの場合

管理者権限でしたコマンドプロンプト上でbcdedit.exeを使ってブートメニューを管理できます。
https://www.youtube.com/watch?v=255ltqk7xDM
bcdedit.exeは、PowerShellでは動作しないようです。

このブログを検索

ブログアーカイブ

QooQ