Windows 11 で WSL2 をセットアップしてみた

2023.05.12

いたくらです。
DvelopersIOに Windows 11版 Windows Subsystem for Linux2 (WSL2) の
セットアップ手順が無さそうだったので(探すの下手なだけかも)
ブログの練習を兼ねて備忘としてまとめてみました。

実行環境

  • エディション:Windows 11 Pro
  • バージョン:22H2
  • OS ビルド:22621.1555

公式手順

参考にした公式手順はこちらです。

やってみた

1. 機能の有効化

スタートボタンを右クリックして設定をクリック。

左側のアプリをクリックしてから、オプション機能をクリック。

下のほうにあるWindowsのその他の機能をクリック。

Linux用Windowsサブシステム仮想マシンプラットフォームにチェックを入れる。
チェックを入れたらOKをクリック。

インストールが始まるので完了するまで待機。
終わり次第今すぐ再起動をクリック。

2. WSL2 Linux カーネル更新プログラムパッケージをダウンロード

3. WSL2 を規定のバージョンとして設定する

PowerShellなどのコンソールから下記コマンドを実行する。
wsl --set-default-version 2
実行した結果はこんな感じになるはずです。

4. 開発者モードの有効化

設定からプライバシーとセキュリティをクリック。
さらに開発者向けをクリック。

開発者モードをクリック。

開発者モードをオンにしますか?と表示されるので、はいをクリック。

開発者モードがオンに変わったことを確認する。

5. Linux ディストリビューションのインストール

Microsoft Storeを開き、インストールしたいLinuxディストリビューションを検索してインストールする。
今回自分はUbuntuをインストールしました。
検索バーでUbuntuを検索して、インストールしたいものをクリック。

入手をクリック。

入手開くに変わったら、スタートメニューに追加されるUbuntuを起動して、インストールが完了するまで待機。
インストールが完了すると、使用するユーザ名とパスワードを入力するよう促されるので、適当に入力する。
一通り完了するとこのような画面になるはず。

一応、PowerShellでインストールされたディストリビューションのバージョンがWSL2であることを確認しておきます。
wsl -l -vを実行)
VERSION = 2となっていることが確認できました。
以上でWSL2のセットアップは終了です。

おまけ

WSL2が使用するメモリ使用量とかを予め設定しておくことで、ホストOSのメモリ大量消費を防げるようなので設定してみました。

1. 「.wslconfig 」の作成

WSL2はWSL全体にかかわる設定をC:\Users\{ユーザ名}\.wslconfigというファイルに持つそうです。
デフォルトでこのファイルは存在しないため、適当にテキストファイルとして.wslconfigというファイルを作成します。

とりあえず適当に値を設定して、その設定が反映されるか確認します。
.wslconfigをメモ帳で開き、以下の内容を記述して保存します。

WSL2に割り当てるメモリ:4GB、CPUコア:2つ、swap:0GB としてみました。
文字コードはUTF-8 (BOM無し)となっていることを一応確認してください。
BOM付きだとうまく適用されないようです。

2. 設定の反映と確認

設定を適用するにはWSL2の再起動が必要なので、Powershell等を管理者権限で立ち上げて下記コマンドを実行し、WSL2を停止させます。
wsl --shutdown
再度Ubuntuを起動して、下記コマンドを実行します。
cat /proc/meminfo
すると、こんな感じで設定通りになっていることが確認できました。

参考にさせていただいた記事一覧

既出の記事に加え、以下の記事も参考にさせていただきました。

アノテーション株式会社について

アノテーション株式会社は、クラスメソッド社のグループ企業として「オペレーション・エクセレンス」を担える企業を目指してチャレンジを続けています。
「らしく働く、らしく生きる」のスローガンを掲げ、様々な背景をもつ多様なメンバーが自由度の高い働き方を通してお客様へサービスを提供し続けてきました。
現在当社では一緒に会社を盛り上げていただけるメンバーを募集中です。少しでもご興味あれば、アノテーション株式会社WEBサイトをご覧ください。