🐧

Windows11 または Windows10 に WSL2 をインストールする

2022/01/01に公開

内容

Windows11 も発売され Windows で Linux を動かす WSL2(Windows Subsystem Linux) の OS への組み込みがかなり進んできており、インストール方法も簡素化されてきています。
WSL を導入することで、開発手法にも幅が広がります。
本記事では簡素化されたWSL2の導入手順を記載します。

なお、公式の手順については、下記を参照してください。
【WSL のインストール】 - Microsoft

動作環境

WSL2 の導入手順は OS のバージョンおよびリビジョンによってインストール方法が変わります。
本記事では下記環境で検証しました。
結論としては、Windows Update で最新版を取得することをおすすめします。

Win11 21H2

エディション     Windows 11 Pro
バージョン       21H2
OS ビルド        22000.376
エクスペリエンス Windows 機能エクスペリエンス パック 1000.22000.376.0

Win10 21H2

エディション     Windows 10 Pro
バージョン       21H2
OS ビルド        19044.1415
エクスペリエンス Windows Feature Experience Pack 120.2212.3920.0

Win10 21H1

エディション     Windows 10 Pro
バージョン       21H1
OS ビルド        19043.1288
エクスペリエンス Windows Feature Experience Pack 120.2212.3920.0
エディション     Windows 10 Pro
バージョン       21H1
OS ビルド        19043.1415
エクスペリエンス Windows Feature Experience Pack 120.2212.3920.0

Win10 20H2

# 途中でエラーになりますが、解決方法があります
# 「トラブルシューティング」を参照してください
エディション     Windows 10 Pro
バージョン       20H2
OS ビルド        19042.1415
エクスペリエンス Windows Feature Experience Pack 120.2212.3920.0
# 本手順でのインストールはできません
# Windows Updateで最新ビルドを取得するか「古いバージョンでのWSLのインストール」を参照してください
エディション     Windows 10 Pro
バージョン       20H2
OS ビルド        19042.508
エクスペリエンス Windows Feature Experience Pack 120.2212.31.0

→ 「古いバージョンでのWSLのインストール」

Win10 2004

エディション     Windows 10 Pro
バージョン       2004
OS ビルド        19041.1415
エクスペリエンス Windows Feature Experience Pack 120.2212.3920.0
# 本手順でのインストールはできません
# Windows Updateで最新ビルドを取得するか「古いバージョンでのWSLのインストール」を参照してください
エディション     Windows 10 Pro
バージョン       2004
OS ビルド        19041.572
エクスペリエンス Windows Feature Experience Pack 120.2212.31.0

→ 「古いバージョンでのWSLのインストール」

WSL2 の導入方法

管理者権限で PowerShell を起動して、下記のコマンドを実行します。

wslのインストール
# wslのインストール
wsl --install

【出力結果】

実行結果
インストール中: 仮想マシン プラットフォーム
仮想マシン プラットフォーム はインストールされました。
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム はインストールされました。
ダウンロード中: WSL カーネル
インストール中: WSL カーネル
WSL カーネル はインストールされました。
ダウンロード中: Ubuntu
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。

上記のように表示されたら、Windows を再起動してください。
再起動すると下記の画面が表示され、インストールが続行されます。

しばらくすると表示が変わるので、任意のユーザとパスワードを設定してください。

下記表示が出たら、起動完了

古いバージョンでのWSLのインストール

古いバージョンでは wsl コマンドを使ったインストールが行えません。
その場合は下記を参照してください。

【以前のバージョンの WSL の手動インストール手順】 - Microsoft

なお、上記の方法で WSL がインストールできたとしても、機能に制限がある場合があります。
Windows Update で最新のOSを取得することをおすすめします。

Ubuntu 以外のディストリビューションをインストールする方法

wsl --install コマンドは、デフォルトでは Ubuntu がインストールされます。
任意のディストリビューションをインストールする場合には、以下のコマンドを実行してください。

ディストリビューションの指定
# Ubuntu-18.04 を指定してインストール
wsl --install -d <Distro>

# Ubuntu-18.04 をインストールする場合
wsl --install -d Ubuntu-18.04

インストールできるディストリビューションは、下記コマンドで確認できます。

ディストリビューション一覧
# ディストリビューション一覧の表示
wsl -l -o

【実行結果】

実行結果
インストールできる有効なディストリビューションの一覧を次に示します。
既定の分布は ' * ' で表されます。
 'wsl --install -d <Distro>'を使用してインストールします。

  NAME            FRIENDLY NAME
* Ubuntu          Ubuntu
  Debian          Debian GNU/Linux
  kali-linux      Kali Linux Rolling
  openSUSE-42     openSUSE Leap 42
  SLES-12         SUSE Linux Enterprise Server v12
  Ubuntu-16.04    Ubuntu 16.04 LTS
  Ubuntu-18.04    Ubuntu 18.04 LTS
  Ubuntu-20.04    Ubuntu 20.04 LTS

ディストリビューションの初期化

WSL でインストールしたディストリビューションは、サンドボックスの様に初期化と再構築を繰り返すことが可能です。
本コマンドを実行すると、指定したディストリビューション内のファイルなどはすべて削除されるので、注意してください。

ディストリビューションの解除
# ディストリビューションの解除
wsl --unregister <Distro>

# Ubuntu の解除
wsl --unregister Ubuntu

【実行結果】

実行結果
登録を解除しています...

再登録には wsl --install コマンドを使います。

ディストリビューションの再インストール
# ディストリビューションの再インストール
wsl --install <Distro>

# Ubuntu の再インストール
wsl --install -d Ubuntu

【実行結果】

実行結果
Ubuntu は既にインストールされています
Ubuntu を起動しています...

Dockerと組み合わせることで、心ゆくまで環境構築を繰り返すことができます。😅

トラブルシューティング

OS の リビジョンやインストールするディストリビューションの組み合わせによっては WSL のインストール時にエラーになる場合があります。

wslのインストール (エラー例)
# OSのbuildによってはエラーになる
wsl --install

インストール中: 仮想マシン プラットフォーム
仮想マシン プラットフォーム はインストールされました。
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム はインストールされました。
ダウンロード中: WSL カーネル
インストール中にエラーが発生しましたが、インストールは続行されます。コンポーネント: 'WSL カーネル' エラーコード:  0x80072f8a
ダウンロード中: Ubuntu
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。

上記のエラーが発生した場合、再起動を行うと WSL のインストールが再開されますが、
下記のようなエラーが出てインストールが失敗する場合があります。

何かキーを押すと画面が閉じるので、管理者権限で PowerShell を起動して、
下記コマンドを実行して、Linux Kernel のアップデートを行ってください。

Linux Kernelのアップデート
# Linux kernel のアップデート
wsl --update

【実行結果】

実行結果
更新をチェック中...
更新をダウンロード中...
更新をインストール中...
この変更は、次回の WSL 再起動時に有効になります。強制的に再起動するには、'wsl --shutdown' を実行してください。
カーネル バージョン: 5.10.60.1
wslの再起動
# WSLの再起動
wsl --shutdown

上記の手順が完了したら、スタートメニューから Ubuntu を起動してください。
その後、任意のユーザとパスワードを設定して、操作を完了してください。

Discussion