WSL2(Windows Subsystem for Linux 2)は、Windows 10 および Windows 11上で Linux ディストリビューションを実行するための互換レイヤーです。今や、Windowsにもとても簡単に「完全な」Linux環境を構築できるようになりました。以下にWSL2の概要、インストール方法、使い方を説明します。

WSL2の概要

  1. 仮想化技術の利用

    WSL2は、Windows上でLinuxカーネルをネイティブに実行するために、軽量の仮想マシン(VM)技術を使用します。これにより、ファイルシステムのパフォーマンスが向上し、完全なLinuxカーネルが提供されます。

  2. 完全なLinuxカーネル

    WSL2はMicrosoftが独自にメンテナンスするLinuxカーネルを使用しています。これにより、システムコールの完全な互換性が提供され、Dockerなどの高度なLinuxアプリケーションがネイティブに動作します。

  3. 高速なファイルシステムパフォーマンス

    WSL2ではファイルシステムのパフォーマンスが大幅に改善されており、特にLinux内のファイルアクセスが高速化されています。

  4. 簡単なインストールとセットアップ

    Windows 10の2004以降のバージョン、およびWindows 11で簡単にセットアップが可能です。Microsoft Storeから好きなLinuxディストリビューション(Ubuntu、Debianなど)をインストールできます。

WSL2のインストールとセットアップ

WSLの有効化

管理者権限のPowerShellまたはコマンドプロンプトを開き、以下のコマンドを実行してWSLを有効化します。

wsl --install

Windows11の場合、このコマンドだけで、以下4つの操作が実行されます。

  • WSLと「仮想マシン プラットフォーム」を有効化する
  • WSL2用Linuxカーネルをダウンロード・インストールする
  • WSL2を既定のバージョンとする
  • Ubuntuディストリビューションをダウンロード・インストールする

WSL2をデフォルトに設定

WSL2をデフォルトのバージョンとして設定するには、以下のコマンドを実行します。

 wsl --set-default-version 2

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

上記ステップ1で既にubuntuがインストールされていますが、追加で他にもMicrosoft Storeから好きなLinuxディストリビューションをインストールできます。例えば、Microsoft Storeを開いて、「Ubuntu」と検索すると、異なるバージョンのUbuntuもインストールできます。

DNS不具合の解決

WSL2 でインストールした ubuntu linux の DNS は 、WSL2起動時に自動的に仮想ネットワークの 172.25.112.1 等のアドレスになっている事があり、これによりDNSアドレス解決に失敗することがあります。そうなると、apt update などでも Temporary failure resolving … といったエラーが出てしまいます。

これを解決しましょう。

まず /etc/wsl.conf に下記を追記して、/etc/resolv.conf ファイルが自動更新されないようにします。

# /etc/wsl.conf

# 以下を追記
[network]
generateResolvConf=false

続いて、一旦コマンドプロンプトかPowerShellからWSLを再起動します。

# --shutdown で終了後自動的に再起動する
wsl --shutdown

DNSサーバーを指定するために /etc/resolv.conf に nameserver のアドレスを設定します。

# /etc/resolv.conf

# ipconfig.exe /all 等で dnsサーバーのアドレスを調べて、それを指定
nameserver 192.168.xxx.xxx

# あるいは、googleのdns 8.8.8.8 を指定
# nameserver 8.8.8.8

WSL2の利用方法

Linuxシェルの起動

インストールしたディストリビューションのアイコンをクリックするか、PowerShellまたはコマンドプロンプトから以下のコマンドを実行してLinuxシェルを起動します。

wsl

ファイルシステムのアクセス

Windowsファイルシステムにアクセスするには、/mnt ディレクトリを使用します。例えば、Cドライブは /mnt/c にマウントされています。

逆に、WSLシステムのフォルダに Windows エクスプローラーからアクセスするには、エクスプローラーのアドレス欄に \\wsl$ と入力します。

まとめ

WSL2は、Windows上でLinux環境を提供するための強力なツールであり、開発者やLinuxユーザーにとって非常に便利です。仮想マシンの技術を利用しているため、パフォーマンスが向上し、より多くのLinuxアプリケーションがネイティブに動作します。設定やインストールも簡単で、Microsoft Storeから必要なディストリビューションを選択するだけで使用を開始できます。

スポンサーリンク