windowsのHyper-vでVmがゾンビになってしまった時の対処法(の一つ)を備忘録として書いておく。
現象(一例)
VMをつかったなんやらで立ち上げたり削除したりしようとしてこんなエラーが出る。
Exiting due to GUEST_FILE_IN_USE:
remove C:\Users\hogehoge\.minikube\machines\minikube\minikube\Virtual Machines\7564XXXXXXXXXXX.vmcx:
The process cannot access the file because it is being used by another process.
Hyper-vマネージャを確認するが、それらしきインスタンスはない。
再起動したら直るか。。?(古典)
=> 治らない(なぜ? わかる方いたら教えてください)
解決策(の一つ)
VMまわりをつかさどっている vmms.exe
を再起動する。
(PowerShellは管理者であげましょう)
Get-Service vmms | Restart-Service
ただ、単に再起動しても同じゾンビプロセスが上がってしまう謎現象が発生したので、
Get-Service vmms
Running vmms Hyper-V Virtual Machine Management
Stop-Service vmms
Stopped vmms Hyper-V Virtual Machine Management
(ここで問題のVMをどうにかする。ファイルを消すとかなんとか)
Start-Service vmms
=> 解決。
参考: http://woshub.com/how-to-stop-a-hung-virtual-machine-on-hyper-v-2016/