Home Assistantで気付いたこと・分かったこと

Hyper-Vで「別のプロセスが使用中です」の原因


はじめに

Home AssistantをVirtualBoxからHyper-Vへ変更することにしました。

仮想マシンの作成は順調に進み、最後に起動ボタンを押したところ、

別のプロセスが使用中です

というエラーが表示されました。

Hyper-Vを使い始めて最初に遭遇したトラブルです。


最初はHyper-Vの設定を疑った

エラーメッセージを見ると、「仮想マシンの設定が間違っているのだろう」と考えるのが普通だと思います。

私も、

  • Secure Bootの設定

  • 自動チェックポイント

  • VHDXファイルの指定

  • 仮想マシンの作り直し

など、Hyper-Vの設定ばかり確認していました。

しかし、何をやっても状況は変わりません。


エラーメッセージをもう一度考えてみる

ここで一度立ち止まり、エラーメッセージをそのまま読んでみました。

「別のプロセスが使用中です」

Hyper-Vの設定が間違っているのであれば、「設定が不正です」や「起動できません」といったメッセージになるはずです。

しかし、このメッセージは**「誰かが使っている」**と言っています。

それなら、Hyper-V以外の何かがVHDXファイルを開いている可能性があるのではないかと考えました。


Windowsが使っていた

そこで、PowerShellでVHDXの状態を調べてみました。

Get-DiskImage "C:\Hyper-V\HomeAssistant\haos_ova-18.1.vhdx"

すると、

Attached : True

と表示されました。

つまり、WindowsがVHDXをディスクとしてマウントしていたのです。

Hyper-Vも同じファイルを使おうとしていたため、

別のプロセスが使用中です

というエラーになっていました。


解決方法

WindowsからVHDXを切り離します。

Dismount-DiskImage -ImagePath "C:\Hyper-V\HomeAssistant\haos_ova-18.1.vhdx"

再度確認すると、

Attached : False

になりました。

この状態でHyper-Vを起動すると、Home Assistantは問題なく起動しました。


今回の気付き

今回、一番印象に残ったのは、

エラーメッセージを思い込みで解釈していたことです。

「Hyper-Vで起きたエラーだから、原因もHyper-Vにある。」

そう考えていました。

しかし実際には、

エラーメッセージの意味をそのまま受け止めれば、答えは書かれていました。

「別のプロセスが使用中です。」

つまり、

「Hyper-V以外の何かが使っている。」

原因はHyper-Vではなく、Windowsだったのです。


おわりに

トラブルが発生すると、どうしても「今触っているソフト」を疑ってしまいます。

しかし今回の経験から、

まずはエラーメッセージを素直に読むことが大切

だと改めて感じました。

Hyper-Vの設定を何時間も見直す前に、

「誰がそのファイルを使っているのか」

という視点で考えていれば、もっと早く解決できたかもしれません。

同じエラーに遭遇した方の参考になれば幸いです。

コメント

このブログの人気の投稿

TOTOの洗面台の水栓の吐水口網を交換してみた

ソフトバンク光でスマホdeひかり電話

パワーポイントでPDF変換ができない