LoginSignup
16
16

More than 3 years have passed since last update.

WSL1 から WSL2への移行

Posted at

はじめに

自身の環境に WSL2 を導入したので備忘録としてその手順を書いていく。前提条件は WSL1 を使っていて、WSL2 は未インストールの状況である。

windows のバージョン確認と機能確認

windows + Rwinver を実行し、windows のバージョンを確認する。WSL2 の起動条件は「x64 システムの場合:バージョン 1903 以降、ビルド 18362 以上。」である。
winver.png
自身のバージョンは20H2、ビルドは19042.867なので問題無し。

次に「Linux 用 Windows サブシステム」と「仮想マシンプラットフォーム」の有効化が必要である。コントロールパネルのWindowsの機能の有効化または無効化でそれぞれにチェックボックスが入っていることを確認する。入ってない場合は、管理者権限で実行した PowerShell で以下のコマンドを実行する。

PowerShell
#Linux 用 Windows サブシステム の有効化
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

#仮想マシンプラットフォーム の有効化
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

win1.png
win2.png

自分の場合はどちらもチェックが入っていたため、次の手順に進む。

Linux カーネル更新プログラムパッケージのダウンロードとインストール

こちらのページの手順4から最新のパッケージをダウンロードし実行する。

インストール済みの Ubuntu を WLS2 で起動できるようにする。

まずデフォルトで WSL2 が動くようにする。以下を実行すると今後インストールする Linux パッケージは全て WSL2 で起動することになる。

PowerShell
PS C:\Users\r_yamamoto> wsl --set-default-version 2
WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください

次に現状インストールされているパッケージがどの WSL で起動するかを確認する。

PowerShell
PS C:\Users\r_yamamoto> wsl --list --verbose
  NAME            STATE           VERSION
* Ubuntu-18.04    Stopped         1

Ubuntu-18.04 が WSL1 で起動される事が分かるので、これを WSL2 で起動するように設定する。

PowerShell
PS C:\Users\r_yamamoto> wsl --set-version Ubuntu-18.04 2
変換中です。この処理には数分かかることがあります...
WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください

ここで30分以上待つ。

PowerShell
変換が完了しました。

このコマンドが通ったら再度確認。

PowerShell
PS C:\Users\r_yamamoto> wsl --list --verbose
  NAME            STATE           VERSION
* Ubuntu-18.04    Stopped         2

以上より WSL2 に移行できた。

参考文献

16
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
16