WSL1をWSL2にアップデートする
今回はWSL1をWSL2にアップデートする手順を掲載する。
前提条件
- PCのWindows10がVersion2004、build19041 以上であること
- WSL1をインストール済み
注意:Windows10のバージョン2004へのアップデートは不具合対応のため、現在対象PCは不具合の影響を受けないPCのみに限定されています。WindowsUpdateからインストールできる場合だけアップデートしてください。「お使いのデバイスでは、まだ準備が完了していません」とか「まもなく~リリース」とか出ている場合は自己責任でやりたい人以外は実行しないでください。*1
WSL2にアップデートする主なメリット
- DockerがWindows 10 Homeでも利用可能になる
近年のWeb技術では欠かせないDockerがようやく利用できます。PCの環境関係なく、コード化されたファイルを作成し、コンテナというものからそのファイルを実行することで指定した開発環境で実行できるという優れものです。詳しくは後日・・・
今回使用した動作環境
Windows10 Home Version2004の
Ubuntu 18.04 LTS(WSL1)
※今回はこのバージョン名を例にしています。該当箇所は自分の環境のものに置き換えてください。
アップデートまでの手順
1.仮想マシンプラットフォームオプション機能を有効にする
まずWSL 2 をインストールする前に、「仮想マシンプラットフォームオプション機能」を有効にする必要がある。
管理者権限で立ち上げたPowerShellで次のコマンドを入力する。
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
コマンド入力後はPCで再起動して「仮想マシンプラットフォームオプション機能」を有効にします。
2.WSL 2 を既定のバージョンに設定する
再び管理者権限のPowerShellで次のコマンドを入力します。
wsl --set-default-version 2
(オプション)手順2のコマンド入力で「WSL 2 を実行するには、カーネル コンポーネントの更新が必要です。」がメッセージが出た場合
<<該当メッセージが出なかった場合は飛ばしてください>>
ここで「WSL 2 を実行するには、カーネル コンポーネントの更新が必要です。」というメッセージが出た場合はPowerShellの案内にある
https://aka.ms/wsl2kernelに飛んで、「Linux カーネル更新プログラムパッケージ」をクリックしwsl_update_x64.msi
をインストールしてください。
インストールすると次の画面が出るはずです。
Nextボタンを押すと次の画面が出てインストールが完了するはずです。
ここで改めて手順2を実行するとエラーがでなくなっているはずです。
3.WSL1で使用中のLinuxをWSL2にアップデートする
まず以下のコマンドでWSL1で使用中のLinuxを確認してください。
wsl --list --verbose
ここで出てくるNAME列の値を使って、以下のコマンドでアップデートします。今回はWSL2へのアップデートなので、2を指定します。
wsl --set-version Ubuntu-18.04 2
「変換が完了しました。」というメッセージが出れば問題ありません。
更新したWSLを立ち上げてから上記のwsl --list --verbose
をもう一度入力するとSTATE列がRunningに変わっていたら完了です。
参考記事
Windows Subsystem for Linux (WSL) を Windows 10 にインストールする | Microsoft Docs