いろいろやってみるにっき

てきとーに生きている奴の日記

古いエントリのサムネイル画像がリンク切れになってたりするけど、チマチマ修正中


Windows 10 May 2020 Updateを実施したのでWSL 2を動かす

WSL 2を使いたいのでWindows 10 May 2020 Updateを入れたのだった。

shigeo-t.hatenablog.com

shigeo-t.hatenablog.com

 

バージョン2004にしてからこういうニュースを見たんだけどw一週間早ければこっちを試してた。

www.atmarkit.co.jp

 

それはさておき、まずあれこれやって状態がおかしくなっているWSLを削除する。残しておいても使わないし。

www.atmarkit.co.jp

 

f:id:shigeo-t:20200826113652p:plain

f:id:shigeo-t:20200826113719p:plain

f:id:shigeo-t:20200826113809p:plain

これで無くなったはず。なお、ストアから入れていないBash on Ubuntu on Windowsは残ってる。

 

次はWSL 2のインストール。

docs.microsoft.com

 

PowerShellを管理者モードで開き、

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

f:id:shigeo-t:20200826114858p:plain

このあと再起動しろって上記Microsoftのリンク先に書いてあるので再起動。

次に『"仮想マシン プラットフォーム" のオプション コンポーネントを有効にする』を実行。

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
f:id:shigeo-t:20200826115936p:plain

 次に『WSL 2 を既定のバージョンとして設定する』を実行。

wsl --set-default-version 2

 なんかメッセージが出た。普段VMware Workstation Playerを使っているので仮想化が有効なのは間違いない。

f:id:shigeo-t:20200826120321p:plain

 

 

とりあえず先に進む。ストアでUbuntuを検索。今回は18.04 LTSを選ぶ。

f:id:shigeo-t:20200826120743p:plain

 [インストール]をクリックする。

f:id:shigeo-t:20200826120951p:plain

 すぐにインストールは終わる。

f:id:shigeo-t:20200826121055p:plain

書かれているように数分かかるがUbuntu 18.04 LTS動いた。

f:id:shigeo-t:20200826121849p:plain

 

バージョンを調べてみる。

wsl --list --verbose
f:id:shigeo-t:20200826122125p:plain

 バージョン1になってる。もう一回

wsl --set-default-version 2

を実行する。さっきと同じメッセージが出てWSL 1のまま。

f:id:shigeo-t:20200826122523p:plain

 

BIOS上で仮想化がONになっているのは間違いないのだが、これを思い出した。

qiita.com

Windows 10で長らくVMware(やVirtualBoxなど)で仮想環境を使っていた開発者が、WSL2(Windows Subsystem for Linux 2)が「Windows Insider Programで」出てきたときに困ったのは、Windows 10上で2つの仮想環境インフラ、つまりHyper-Vと(WSL2が動作している)Hyper-Vが共存できない、ということでした。

さて、WSL2もWindows 10 May 2020 Updateで正式機能としてリリースされましたが、上記の「仮想環境共存できない」問題にも解決の方法が用意されました。こちらのプレスリリースにもあるように、MicrosoftVMwareWindows Hypervisor Platform(WHP) APIを共同開発し、Windows 10 May 2020 Update + VMware Workstation 15.5.5 Proの組み合わせから、共存可能になった模様です。

 

そこでHyper-VをONにして、まずはVMwareが動くかを確認する。VMwareVMwareで必要なんで。Windowsの機能を起動。Hyper-Vにチェックは入っていないのでチェックを入れる。

f:id:shigeo-t:20200826122946p:plain

[OK]をクリックする。

f:id:shigeo-t:20200826123009p:plain

もちろん[今すぐ再起動(N)]をクリック。

f:id:shigeo-t:20200826123029p:plain

 

再起動後VMを1本起動してみる。Hyper-VVMware Workstation Playerが併存している。

f:id:shigeo-t:20200826124518p:plain

 

wsl --set-default version 2を実行。今度はエラーメッセージが変わった。

f:id:shigeo-t:20200826124645p:plain

そこでディストリビューションにWSL 2を設定してみる。

wsl --set-version <distribution name> <versionNumber>

 今度はカーネルコンポーネントの更新が必要になった。

f:id:shigeo-t:20200826124831p:plain

 

 WSL 2 Linuxカーネルの更新はこちら。

docs.microsoft.com

ダウンロードした。

f:id:shigeo-t:20200826125031p:plain

実行するとあっという間に終了。

f:id:shigeo-t:20200826125104p:plain

今度はWSL 2になった。

f:id:shigeo-t:20200826125255p:plain

 

ところで違いはどうかというと、ちょっと使ってみただけでは分からない。

docs.microsoft.com

 

Dockerも使えるようになるはずなので次回はDocker環境の構築へ。

お時間あったら、他のエントリもクリックして頂ければ幸いです。