t0kapoの雑記

ただの情弱。日記と情報セキュリティと写真、変なTipsなど

WSL2を使おうとしたらVMware Workstationで仮想マシンが使えなくなって困った話

WSL2でLinux使おうとしたら、VMware仮想マシン上のLinux(KaliとかUbuntuとか)が使えなくなって困った&解決したのでメモ(2020/10/01)

問題点

Dockerについての学習中に、ふとした思い付きでWSL2を試してみたくなった。WSL自体試したことがなかったので、下のドキュメントを見ながら設定していた。
docs.microsoft.com
手順3まで終えてPCを再起動した後、「WSL2インストール後は他の仮想マシンが不安定になる」的な話を思い出したので、VMware上のOS(Kali Linux)を起動してみたところ、次の画面が表示された
f:id:Takachin53:20201001165427j:plain
f:id:Takachin53:20201001165524j:plain
VMware上のOSが起動できず、ウィンドウが表示された。

解決までの道のり

とりあえず2枚目のウィンドウ内のURLをクリック
kb.vmware.com
どうやらHyper-vを無効化すればよいらしい。
docs.microsoft.com
上記の記事通り試してみたが、上手くいかなかった。例えば自分のWindowsだと「Windowsの機能の有効化または無効化」内に「Hyper-v」の欄がなかったり、PowerShellでコマンド「Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Hypervisor」を実行してもエラー?が出たからである。
qiita.com
フォロワーの方やラボメンに上記のQiitaの記事を教えて貰って試そうとしたが、これも「AMD-V/RVI を仮想化(V)」「CPU パフォーマンス カウンタを仮想化(U)」「IOMMU(IO メモリ管理ユニット)を仮想化(I)」の欄が自分の環境にはなく、泣く泣く諦めた。

解決

ここで一息置いて、最初に出てきたエラーのメッセージ(ウィンドウ)振り返ってみることにした。
f:id:Takachin53:20201001165427j:plain
...「VMware PlayerとDevice/Credential Guardには互換性がありません」ってドンピシャな答えが書いてある...見逃してた...。この後色々調べて、下記の記事を参考にすることにした。
4thsight.xyz
コマンド「bcdedit /set hypervisorlaunchtype off」をcmdで管理者権限を使用して実行することで、再びVMware上のOSが使えるようになった。ただし、Hyper-vが無効化されたことでWSL2が使えなくなり、有効化しないと使えなくなった。

反省

ちょっと情報量が少ないんで、後日時間があったら色々追記する。

追記:2021/07/06
このブログ見返してて思ったんだけど、そもそもWSLとVMwareが共存できるようになったのはWSL2からで、手順3までだけ終わらした状態だと、以降の手順で行う「Linux カーネル更新プログラムパッケージをダウンロード」や「wsl --set-default-version 2」でWSLのバージョン指定の実行を行っていない訳だから、WSL(versioon1)を使おうとしてて共存できる訳ないんだよなあってなった。なにやってんだ。