🍣

WSL2 Ubuntu 設定のベストプラクティス

に公開

こちらでは、私が Windows 11 に WSL2 を利用するために実施した自分なりのベストプラクティスを記載します。

実行環境

  • Windows バージョン
エディション Windows 11 Home
バージョン 21H2
インストール日 ‎2022/‎07/‎24
OS ビルド 22000.832
エクスペリエンス Windows 機能エクスペリエンス パック 1000.22000.832.0
  • Ubuntu バージョン
cat /etc/os-release
> NAME="Ubuntu"
> VERSION="20.04.4 LTS (Focal Fossa)"
> ...

systemd を利用できるようにする

はじめに、こちらの記事のとおり WSL2 Ubuntu で systemd を利用できるようにします。

https://zenn.dev/fehde/articles/103560f2a7065f

Windows FireWall のポートを解放する

Windows PowerShell を管理者権限で起動し、イーサネットアダプタを確認する。

ipconfig
# > イーサネット アダプター vEthernet (WSL):
# > ...

イーサネットアダプタ vEthernet (WSL) について、FW を設定する。

New-NetFirewallRule -DisplayName "WSL" -Direction Inbound -InterfaceAlias "vEthernet (WSL)" -Action Allow

ロケールを変更する

sudo apt -y install language-pack-ja
sudo update-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"

NTP サーバを設定する

sudo sed -i 's/#NTP=/NTP=ntp.nict.jp/g' /etc/systemd/timesyncd.conf

Windows のドライブレターを割り当てる

ここでは、Uドライブに \\wsl$\ubuntu を割り当てます。
Windows PowerShell を管理者権限で起動して下記コマンドを実行します。

net use U: \\wsl$\ubuntu

なお、/mnt/... に Windows 側のファイルシステムをマウントすると非常にパフォーマンスが悪いようです。

WSL2 をアップデートする

Windows PowerShell を管理者権限で立ち上げ、下記コマンドを実行する。

wsl --update

Discussion