WSL2とは|WSL1との違い・仕組み・インストール方法とメリット/デメリットを解説

WSL2(Windows Subsystem for Linux 2)とは、Windows上で本物のLinuxカーネルを動かすマイクロソフトの仕組みで、現在のWSLの既定バージョンです。この記事では、WSL2の読み方や仕組み、WSL1との違い、wsl --installでの導入手順、メリット・デメリット(できないこと)、セキュリティの注意点までを2026年の最新動向を踏まえて整理します。Dockerやデータベースを使う開発環境を、仮想マシンを別途立てずにWindows上で構築したい方向けの入門ガイドです。

まとめ:WSL2の要点

  • WSL2とは:Hyper-Vベースの軽量仮想マシンでLinuxカーネルを直接実行する仕組み。読み方は「ダブリューエスエルツー」。
  • WSL1との違い:WSL1はシステムコール変換(エミュレーション)、WSL2は本物のLinuxカーネル。WSL2はファイルI/Oが大幅に速くDockerもネイティブに動く。
  • 導入:Windows 10(1903以降)/Windows 11で、管理者PowerShellの wsl --install 一発。64bit+仮想化(VT-x/AMD-V)+仮想マシンプラットフォームが前提。
  • メリット/デメリット:高速・軽量・WindowsとLinuxの統合が利点。一方Hyper-V有効化でVirtualBox等と競合する場合があり、ネイティブLinuxよりわずかにオーバーヘッドがある。
  • セキュリティ:Windowsファイルへアクセスできるため、ディストリの更新・不要サービス停止・ファイアウォール設定が要点。
  • 最新動向:WSLは2025年5月に(一部の低レベルコンポーネントを除き)オープンソース化(MITライセンス)。systemd(設定で有効化)にも対応し、機能追加が活発に続いている。

WSL2とは何か(読み方・基本概念)

WSL2は、Windows上でLinuxを動かすWSLの第2世代です。WSL1がWindowsカーネル上でLinuxのシステムコールを変換していたのに対し、WSL2はHyper-Vベースの軽量な仮想マシン上で本物のLinuxカーネルを直接実行します。これによりLinuxカーネル機能が完全に使え、Dockerのようなコンテナ技術やファイルI/Oの重い処理がWindows上でそのまま動くようになりました。

従来は仮想マシンやデュアルブートが必要だったLinux開発環境を、Windowsの利便性を保ったまま手に入れられるのが最大の価値です。なお2025年5月にWSL自体が(一部の低レベルコンポーネントを除き)オープンソース化(MITライセンス、microsoft/WSL)され、systemd(設定で有効化)対応などの改良も続く成熟した技術になっています。

WSL2とWSL1の違い(仕組み・パフォーマンス・ファイルシステム)

両者は目的は同じですが、アーキテクチャが根本的に異なります。違いを整理すると次のとおりです。

観点 WSL1 WSL2
実行方式 システムコール変換(エミュレーション) 本物のLinuxカーネル(軽量VM)
Linuxカーネル互換性 一部非対応 完全対応
Docker 制約あり ネイティブ対応
ファイルI/O(Linux側) 遅い 大幅に高速(ext4)
Windowsファイル参照 速い /mnt/c 経由でやや遅い

ポイントは「Linux側のディスク処理はWSL2が圧倒的に速い」一方で、「/mnt/c/ 越しのWindowsファイル操作はWSL1の方が速い場合がある」ことです。Dockerやコンパイル、データベースなどI/Oの重い作業が多いなら、Linuxファイルシステム上に置けるWSL2が有利です。Hyper-VとWSL2の違いを問われることもありますが、WSL2はHyper-Vの仮想化基盤を利用しつつ、起動の速さとWindows統合に特化した使い勝手になっています。

WSL2のインストール方法(動作要件と手順)

動作要件は、Windows 10 バージョン1903以降またはWindows 11、64bitプロセッサ、BIOS/UEFIでの仮想化(Intel VT-x/AMD-V)有効化、そして「仮想マシンプラットフォーム」「Hyper-V」機能の有効化です。要件を満たせば、管理者権限のPowerShellで次の1コマンドから導入できます。

wsl --install
wsl --update
wsl -l -v

wsl --install でWSL(既定でWSL2)と既定ディストリビューション(Ubuntu)がまとめて入り、再起動後に初回ユーザー名・パスワードを設定すれば利用開始です。特定のディストリを入れたい場合は wsl --install -d <ディストリ名>、既存ディストリをWSL2へ変えるには wsl --set-version <ディストリ名> 2 を使います。導入後は wsl --update でカーネルを最新化できます。

使えるLinuxディストリビューション(Ubuntu・Debian・Kali など)

Microsoft StoreまたはコマンドからUbuntu・Debian・Kali Linux・openSUSE・Alpineなどを導入でき、複数を同時に入れて用途別に使い分けられます。初心者はサポートが手厚いUbuntuが無難で、安定性重視ならDebian、セキュリティ検証用途ならKali、軽量重視ならAlpineが向きます。インストール済み一覧は wsl -l -v で確認できます。

WSL2のメリット・デメリット(できないこと)

メリットは、Linuxネイティブに近い高パフォーマンス、軽量で高速な起動、WindowsとLinuxのシームレスなファイル共有、Dockerのネイティブ動作です。一方でデメリット・注意点として次があります。

  • Hyper-Vを有効化するため、VirtualBoxやVMwareなど一部の仮想化ソフトと競合する場合がある。
  • 仮想マシンベースのためネイティブLinuxよりわずかなオーバーヘッドがある。
  • /mnt/c 越しのWindowsファイル大量操作は遅くなりやすい(Linux側に置くと改善)。
  • GUIアプリやUSB/シリアル等のハード直結は設定が必要で、用途によっては仮想マシンの方が向く。

「WSL2でできないこと」を理解したうえで、クロスプラットフォーム開発やDocker利用が中心なら導入価値は高い、というのが実務的な判断軸です。

WSL2のセキュリティの注意点

WSL2のLinux環境はWindowsのファイルにアクセスでき、Windowsのセキュリティ設定にも依存します。安全に使うための基本は、ディストリビューションのセキュリティ更新(sudo apt update && sudo apt upgrade)を定期的に行うこと、不要なパッケージ・サービスを止めること、Windowsのファイアウォールやウイルス対策を適切に構成することです。社内環境では、WSL2内に置いた認証情報やソースコードの管理ポリシーもあわせて整えておくと安心です。

WSL2の開発環境構築(Docker・VSCode・.wslconfig)

WSL2は開発ツールとの統合が強力です。DockerはDocker Desktopの「WSL 2 ベースのエンジンを使用する」を有効にすると、WSL2上で軽量・高速に動きます。VSCodeは「WSL」拡張で、WSL2内のLinux環境を直接開いてリモート開発ができます(コンテナ前提の開発ならdevcontainerとの併用も有効)。

リソース配分は、Windowsのユーザーフォルダに置く .wslconfig で調整します。たとえばメモリとCPUを絞るには次のように書きます。

[wsl2]
memory=4GB
processors=2

動作が重くなったら wsl --shutdown で一度停止してリフレッシュすると改善することがあります。

WSL2のトラブルシューティング(起動しない・インストールできない・ネット接続)

WSL2でつまずきやすい代表的な症状と対処は次のとおりです。

  • インストールできない:Windowsバージョン(1903以降/Win11)と、BIOS/UEFIの仮想化(VT-x/AMD-V)有効化、「仮想マシンプラットフォーム」「Hyper-V」の有効化を確認する。
  • 起動しない・動作がおかしい:管理者PowerShellで wsl --shutdown 後に再起動し、wsl --update でカーネルを最新化する。
  • インターネットに接続できないwsl --shutdown での再起動、VPN/プロキシ設定の確認、必要に応じて /etc/resolv.conf のDNS見直しで改善することが多い。

よくある質問(FAQ)

WSL2の読み方は?

「ダブリューエスエルツー」と読みます。正式名称はWindows Subsystem for Linux 2です。

WSL1とWSL2の違いは?どちらを使うべき?

WSL2は本物のLinuxカーネルを使い、ファイルI/OやDockerで有利です。基本はWSL2が推奨で、現在の既定もWSL2です。/mnt/c越しのWindowsファイルを多用する特殊用途のみWSL1が速い場合があります。

WSL2でできないことは?

Hyper-V有効化で一部の仮想化ソフトと競合することがあり、GUIアプリやUSB直結などは追加設定が必要です。ネイティブLinuxよりわずかなオーバーヘッドもあります。

WSL2のインストールに必要な要件は?

Windows 10 バージョン1903以降またはWindows 11、64bit CPU、仮想化(VT-x/AMD-V)有効化、仮想マシンプラットフォーム/Hyper-Vの有効化が必要です。

WSL2は安全に使える?

WindowsファイルにアクセスできるためOSと一体のセキュリティ管理が必要です。ディストリの更新、不要サービスの停止、ファイアウォール設定を行えば一般的な開発用途では問題なく使えます。

関連記事

資料請求

RELATED POSTS 関連記事