2018/06/28(木)Windows/UEFIの起動とbcdeditが遅くなった時の対処方法

Windows7/UEFIを使用していて、いつの頃からか、Windowsの起動で1分ぐらい待たされるようになりました。メモリも十分にあるし、SSDなのにおかしいということで調査しました。

bcdeditがやたら遅い

bcdeditという、Windows7以降のUEFI環境でboot関係の設定をするWindows付属のツールがあるのですが、こいつの動作が遅くなっていました。

c:> bcdedit /enum ALL

結果が出ててくるまで40秒ぐらい待たされます。しかも、その間プロセスのCPU使用率が上限に張り付いたままです(4コアなら25%に行ったまま)。無限ループから返ってきてない感。

それと関連して、msconfigコマンドの起動も遅いですし、BCD関連ツールは軒並み動作が重くなっていました。

Windowsの起動も遅い

Windowsのロゴが表示されてから30秒ぐらい待たされます。

変なドライバでこけているのか、巷で噂なのClasspnp.sysの問題なのかとも思ったのですが、色々対処してみても改善せず違った模様。

結果的には、BCD関連の問題に当たっていただけでした。

BCD情報のクリア?

どうも、BIOSが持っているBCD情報に問題がありそうな気配です。

USBドライブ(やCDドライブ)からDebianなどのLinux Live CDを起動します。続いて、ターミナルを開きます。

sudo su
mkdir /efi
mount -t vfat /dev/sda1 /efi
cd /efi/Micosoft/Boot
mv BCD BCD.bak
reboot

これでもれなくブルースクリーンが拝めるので、再度、Linuxを起動してBCD情報ファイルを元に戻します。

sudo su
mkdir /efi
mount -t vfat /dev/sda1 /efi
cd /efi/EFI/Micosoft/Boot
mv BCD.bak BCD
reboot

これでなぜかbcdeditとWindows7の起動が遅い問題は解決されました。

解決したものの、解決理由は不明です。BIOSにUEFI情報の初期化機能があれば、そちらで済むかも知れません。