UEFI起動メニュー(NVRAM)から起動エントリを除去する [Windows]
UEFIの起動デバイス選択メニューに残っているubuntuを除去する方法。コマンドプロンプト(管理者権限)使用。
ubuntuをインストールしたときの名残か、削除した後もブートメニューにubuntuという項目が残っていたのだが、放っておいても問題ないと言うことでそのままにしていた。最近になって「NVRAMのデータを削除すればいいんじゃないか」と思い当たって探ってみたら、既にその方法を公開されている方がいらっしゃったので、それを参考に実践してみた。
NVRAMのエントリを照会する
UEFIブートマネージャーのエントリデータはWindowsのBCDストアだけでなく、マザーボード上のNVRAMと呼ばれる不揮発性メモリにも保存されている。基本的にはBCDストアの内容がNVRAMにも保存されているが、必ずしも同期しているわけではなくNVRAMにしか存在しない項目がある。
NVRAMのエントリデータについてもWindows Vista(7)以降で実装されたbcdeditコマンドで照会・編集できる。
NVRAMのエントリを照会するには、コマンドプロンプトを管理者権限で起動してbcdedit /enum firmware
を実行する。
Microsoft Windows [Version 10.0.14385]
(c) 2016 Microsoft Corporation. All rights reserved.
C:\WINDOWS\system32>bcdedit /enum firmware
ファームウェアのブート マネージャー
--------------------------------
identifier {fwbootmgr}
displayorder {bootmgr}
{2e6eda2d-4687-11e6-83b9-806e6f6e6963}
{2869f2d2-45d0-11e6-83b5-806e6f6e6963}
{2869f2d3-45d0-11e6-83b5-806e6f6e6963}
{2869f2d4-45d0-11e6-83b5-806e6f6e6963}
{7edf3755-4679-11e6-83b7-806e6f6e6963}
timeout 1
Windows ブート マネージャー
--------------------------------
identifier {bootmgr}
device partition=\Device\HarddiskVolume6
path \EFI\Microsoft\Boot\bootmgfw.efi
description Windows Boot Manager
locale ja-JP
inherit {globalsettings}
flightsigning Yes
default {current}
resumeobject {aeea69be-8817-11e2-bf6e-bc5ff4658ee9}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 6
ファームウェア アプリケーション (101fffff
--------------------------------
identifier {2869f2d2-45d0-11e6-83b5-806e6f6e6963}
description Hard Drive
ファームウェア アプリケーション (101fffff
--------------------------------
identifier {2869f2d3-45d0-11e6-83b5-806e6f6e6963}
description CD/DVD Drive
ファームウェア アプリケーション (101fffff
--------------------------------
identifier {2869f2d4-45d0-11e6-83b5-806e6f6e6963}
description USB
ファームウェア アプリケーション (101fffff
--------------------------------
identifier {2e6eda2d-4687-11e6-83b9-806e6f6e6963}
device partition=\Device\HarddiskVolume6
path \EFI\ubuntu\grubx64.efi
description ubuntu
ファームウェア アプリケーション (101fffff
--------------------------------
identifier {7edf3755-4679-11e6-83b7-806e6f6e6963}
device partition=I:
description UEFI: (FAT) BUFFALO USB Flash Disk 1.00
C:\WINDOWS\system32>
NVRAMのエントリを削除する
NVRAMのエントリを削除するには普通にBCDエントリを削除するときと同じように、bcdedit /delete ID
を実行する。IDは先の/enumスイッチで表示されたテキストの中から「description ubuntu」となっている項目の「identifier」の値をそのまま指定する。
C:\WINDOWS\system32>bcdedit /delete {2e6eda2d-4687-11e6-83b9-806e6f6e6963}
この操作を正しく終了しました。
C:\WINDOWS\system32>
残留しているブートローダーファイルを削除する
通常、ブートローダーファイルはWindowsと同じディスク上の100MBほどの起動用ドライブ(FAT32フォーマット)の中にある。このドライブにはドライブ文字が割り当てられていないので、ファイルにアクセスするにはディスクの管理ツール等を使ってドライブ文字を割り当てる必要がある。
ディスクの管理ツール等を使わずにコマンドプロンプトだけで完結させることもできる。
C:\WINDOWS\system32>diskpart
Microsoft DiskPart バージョン 10.0.14385.0
Copyright (C) 1999-2013 Microsoft Corporation.
コンピューター: NT62
DISKPART> list volume
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ---- ---------- ------- --------- --------
Volume 0 E DVD-ROM 0 B メディアなし
Volume 1 I TRANSCEND FAT32 リムーバブル 7355 MB 正常
Volume 2 D Data@HD2 NTFS Partition 1863 GB 正常
Volume 3 F Data@HD3 NTFS Partition 2794 GB 正常
Volume 4 C Win10 NTFS Partition 222 GB 正常 ブート
Volume 5 回復 NTFS Partition 368 MB 正常 非表 示
Volume 6 FAT32 Partition 100 MB 正常 システ ム
Volume 7 NTFS Partition 461 MB 正常 非表示
Volume 8 G リムーバブル 0 B メディアなし
Volume 9 H リムーバブル 0 B メディアなし
Volume 10 L リムーバブル 0 B メディアなし
Volume 11 M リムーバブル 0 B メディアなし
DISKPART> select volume 6
ボリューム 6 が選択されました。
DISKPART> assign
DiskPart はドライブ文字またはマウント ポイントを正常に割り当てました。
DISKPART> list volume
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ---- ---------- ------- --------- --------
Volume 0 E DVD-ROM 0 B メディアなし
Volume 1 I TRANSCEND FAT32 リムーバブル 7355 MB 正常
Volume 2 D Data@HD2 NTFS Partition 1863 GB 正常
Volume 3 F Data@HD3 NTFS Partition 2794 GB 正常
Volume 4 C Win10 NTFS Partition 222 GB 正常 ブート
Volume 5 回復 NTFS Partition 368 MB 正常 非表 示
Volume 6 J FAT32 Partition 100 MB 正常 システ ム
Volume 7 NTFS Partition 461 MB 正常 非表示
Volume 8 G リムーバブル 0 B メディアなし
Volume 9 H リムーバブル 0 B メディアなし
Volume 10 L リムーバブル 0 B メディアなし
Volume 11 M リムーバブル 0 B メディアなし
DISKPART> exit
DiskPart を終了しています...
C:\WINDOWS\system32>dir j:
ドライブ J のボリューム ラベルがありません。
ボリューム シリアル番号は A2D3-75DA です
J:\ のディレクトリ
03/08/2013 22:07 <DIR> EFI
11/11/2012 06:30 <DIR> Temp
0 個のファイル 0 バイト
2 個のディレクトリ 73,965,568 バイトの空き領域
C:\WINDOWS\system32>J:
J:\>cd efi
J:\EFI>dir
ドライブ J のボリューム ラベルがありません。
ボリューム シリアル番号は A2D3-75DA です
J:\EFI のディレクトリ
11/06/2012 18:27 <DIR> .
11/06/2012 18:27 <DIR> ..
11/06/2012 18:27 <DIR> Microsoft
11/06/2012 18:31 <DIR> Boot
03/08/2013 22:07 <DIR> ubuntu
0 個のファイル 0 バイト
5 個のディレクトリ 73,965,568 バイトの空き領域
J:\EFI>rd /s ubuntu
ubuntu、よろしいですか (Y/N)? y
J:\EFI>c:
C:\Windows\System32>diskpart
Microsoft DiskPart バージョン 10.0.14385.0
Copyright (C) 1999-2013 Microsoft Corporation.
コンピューター: NT62
DISKPART> list volume
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ---- ---------- ------- --------- --------
Volume 0 E DVD-ROM 0 B メディアなし
Volume 1 I TRANSCEND FAT32 リムーバブル 7355 MB 正常
Volume 2 D Data@HD2 NTFS Partition 1863 GB 正常
Volume 3 F Data@HD3 NTFS Partition 2794 GB 正常
Volume 4 C Win10 NTFS Partition 222 GB 正常 ブート
Volume 5 回復 NTFS Partition 368 MB 正常 非表 示
Volume 6 J FAT32 Partition 100 MB 正常 システ ム
Volume 7 NTFS Partition 461 MB 正常 非表示
Volume 8 G リムーバブル 0 B メディアなし
Volume 9 H リムーバブル 0 B メディアなし
Volume 10 L リムーバブル 0 B メディアなし
Volume 11 M リムーバブル 0 B メディアなし
DISKPART> select volume 6
ボリューム 6 が選択されました。
DISKPART> remove
DiskPart はドライブ文字またはマウント ポイントを正常に削除しました。
DISKPART> list volume
Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ---- ---------- ------- --------- --------
Volume 0 E DVD-ROM 0 B メディアなし
Volume 1 I TRANSCEND FAT32 リムーバブル 7355 MB 正常
Volume 2 D Data@HD2 NTFS Partition 1863 GB 正常
Volume 3 F Data@HD3 NTFS Partition 2794 GB 正常
Volume 4 C Win10 NTFS Partition 222 GB 正常 ブート
Volume 5 回復 NTFS Partition 368 MB 正常 非表 示
* Volume 6 FAT32 Partition 100 MB 正常 システ ム
Volume 7 NTFS Partition 461 MB 正常 非表示
Volume 8 G リムーバブル 0 B メディアなし
Volume 9 H リムーバブル 0 B メディアなし
Volume 10 L リムーバブル 0 B メディアなし
Volume 11 M リムーバブル 0 B メディアなし
DISKPART> exit
DiskPart を終了しています...
C:\Windows\System32>
終
参考サイト
- EFIブートエントリからブート項目を削除する | LINUXの勉強ブログ
- https://blog.ryzen.tokyo/2016/06/bcdedit-delete-efi-entry/