Windows11 または Windows10 に WSL2 をインストールする
内容
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
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
WSL2 の導入方法
管理者権限で PowerShell を起動して、下記のコマンドを実行します。
# 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 のインストール時にエラーになる場合があります。
# OSのbuildによってはエラーになる
wsl --install
インストール中: 仮想マシン プラットフォーム
仮想マシン プラットフォーム はインストールされました。
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム はインストールされました。
ダウンロード中: WSL カーネル
インストール中にエラーが発生しましたが、インストールは続行されます。コンポーネント: 'WSL カーネル' エラーコード: 0x80072f8a
ダウンロード中: Ubuntu
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。
上記のエラーが発生した場合、再起動を行うと WSL のインストールが再開されますが、
下記のようなエラーが出てインストールが失敗する場合があります。
何かキーを押すと画面が閉じるので、管理者権限で PowerShell を起動して、
下記コマンドを実行して、Linux Kernel のアップデートを行ってください。
# Linux kernel のアップデート
wsl --update
【実行結果】
更新をチェック中...
更新をダウンロード中...
更新をインストール中...
この変更は、次回の WSL 再起動時に有効になります。強制的に再起動するには、'wsl --shutdown' を実行してください。
カーネル バージョン: 5.10.60.1
# WSLの再起動
wsl --shutdown
上記の手順が完了したら、スタートメニューから Ubuntu
を起動してください。
その後、任意のユーザとパスワードを設定して、操作を完了してください。
Discussion