※本ページにはプロモーション(広告)が含まれています
【2026年最新版】WindowsにWSL2でUbuntu環境を構築してLinuxを使う方法【完全ガイド】
「Windowsを使っているがLinuxのコマンドも使いたい」「仮想マシンは重くて起動が遅い」「開発環境をLinuxで統一したいがMacに移行するコストは避けたい」——そんな悩みを持つエンジニアや学生の方は多いのではないでしょうか。
WSL2(Windows Subsystem for Linux 2)は、Windows上でLinuxを本物に近い速度・互換性で動かせるMicrosoftの公式機能です。仮想マシンのような重さがなく、WindowsファイルとLinuxファイルを相互にアクセスでき、VS Codeとのシームレスな連携も魅力です。
この記事では、WSL2の有効化方法からUbuntuのインストール・初期設定、VS Codeとの連携、ファイルシステムへのアクセス、よく使うLinuxコマンド、WSL1とWSL2の違い、トラブルシューティングまで、2026年現在の最新情報を交えて完全解説します。

この記事でわかること
- WSL2とは何か・仮想マシンとの違い
- WSL2の有効化とUbuntuインストールの手順
- Ubuntuの初期設定(ユーザー作成・パッケージ更新)
- VS CodeでWSL2のファイルを直接編集する方法
- WindowsとLinuxのファイルシステムを相互にアクセスする方法
- WSL2でよく使うLinuxコマンド集
- WSL1とWSL2の違いと使い分け
- よくあるトラブルと対処法
WSL2とは?基礎知識
WSL(Windows Subsystem for Linux)の概要
WSLはMicrosoftがWindows 10以降に導入した「Windows上でLinuxを動かす仕組み」です。2019年にリリースされたWSL2では、実際のLinuxカーネルを搭載し、Linuxの互換性が飛躍的に向上しました。
WSL2・WSL1・仮想マシンの比較
| 比較項目 | WSL1 | WSL2 | 仮想マシン(VMware等) |
|---|---|---|---|
| Linuxカーネル | なし(変換レイヤー) | あり(本物のLinuxカーネル) | あり |
| 起動速度 | 高速 | 高速 | 遅い(数十秒〜数分) |
| Linuxアプリ互換性 | 一部不対応 | 高い(本物のLinux) | 高い |
| ファイルI/O速度 | Windowsファイルは高速 | Linuxファイルは高速 | 中程度 |
| Windowsとのファイル共有 | シームレス | シームレス(パスで相互アクセス) | 共有フォルダ設定が必要 |
| メモリ使用量 | 少ない | 中程度(動的割り当て) | 多い(固定割り当て) |
| GUIアプリ | 不可 | 可(WSLg機能) | 可 |
WSL2で何ができるか
- bash・zsh・fishなどLinuxシェルの実行
- apt/aptでのLinuxパッケージインストール(nginx・MySQL・Node.jsなど)
- Dockerの実行(Docker Desktop for Windowsと連携)
- Python・Ruby・Rustなど開発環境の構築
- シェルスクリプトの作成・実行
- LinuxサーバーとのSSH接続・管理作業
- LinuxのGUIアプリの表示(Windows 11のWSLg)
動作要件
| 要件 | 最小 | 推奨 |
|---|---|---|
| OS | Windows 10 バージョン1903以上 | Windows 11 |
| CPUアーキテクチャ | x64またはARM64 | x64 |
| 仮想化機能 | BIOS/UEFIで仮想化有効 | 同左 |
| RAM | 4GB | 8GB以上 |
| ストレージ | 10GB以上の空き | 20GB以上 |
WSL2の有効化とUbuntuのインストール手順
方法1:コマンド1行でインストール(Windows 10 バージョン2004以降・Windows 11推奨)
2021年以降のWindowsでは、PowerShellの1コマンドでWSL2とUbuntuを同時にインストールできます。
Step 1:PowerShellを管理者権限で開く
- Windowsキーを押してスタートメニューを開く
- 「PowerShell」と検索
- 「Windows PowerShell」を右クリック→「管理者として実行」をクリック
- ユーザーアカウント制御(UAC)の確認ダイアログで「はい」をクリック
Step 2:WSL2インストールコマンドを実行
PowerShellに以下のコマンドを入力してEnterを押します:
wsl --install
このコマンドで以下が自動的に行われます:
- WSL機能の有効化
- 仮想マシンプラットフォームの有効化
- Linuxカーネルのインストール
- WSL2をデフォルトバージョンに設定
- Ubuntu(最新LTS版)のインストール
Step 3:PCを再起動
インストール完了後、必ずPCを再起動してください。再起動しないとWSL2が正常に動作しません。
Step 4:Ubuntuの初期設定
再起動後、自動的にUbuntuの設定ウィンドウが開きます(または「Ubuntu」アプリを起動)。
- Linuxユーザー名を入力してEnter(例:
taro) - パスワードを入力(入力中は表示されない)してEnter
- 確認のため同じパスワードを再入力してEnter
- 「Installation successful!」と表示されたらセットアップ完了

方法2:手動でステップごとにインストール(古いWindows 10向け)
Step 1:WSL機能を有効化
PowerShellで以下を実行:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Step 2:仮想マシンプラットフォームを有効化
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Step 3:PCを再起動
Step 4:WSL2 Linuxカーネルをダウンロード・インストール
Microsoftの公式サイトから「x64マシン用WSL2 Linuxカーネル更新プログラムパッケージ」をダウンロードしてインストール。
Step 5:WSL2をデフォルトに設定
wsl --set-default-version 2
Step 6:Microsoft StoreからUbuntuをインストール
- Microsoft Storeを開く
- 「Ubuntu」で検索
- 「Ubuntu 24.04 LTS」(最新LTS)を選択して「入手」をクリック
- インストール完了後「開く」→ ユーザー名とパスワードを設定
特定のディストリビューションを指定してインストール
Ubuntu以外のディストリビューションをインストールする場合:
wsl --install -d <ディストリビューション名>
利用可能なディストリビューションの確認:
wsl --list --online
Ubuntuの初期設定
パッケージの更新(重要)
インストール直後は必ずパッケージを最新に更新してください:
sudo apt update && sudo apt upgrade -y
パスワードを求められたら、設定したパスワードを入力します(入力中は表示されません)。
日本語環境の設定
sudo apt install -y language-pack-ja
sudo update-locale LANG=ja_JP.UTF-8
よく使う開発ツールのインストール
| ツール | インストールコマンド | 用途 |
|---|---|---|
| git | sudo apt install -y git |
バージョン管理 |
| curl | sudo apt install -y curl |
HTTP通信・ファイルダウンロード |
| build-essential | sudo apt install -y build-essential |
GCC・Makeなどビルドツール |
| Python3 | sudo apt install -y python3 python3-pip |
Python開発環境 |
| Node.js(nvm経由) | curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash |
Node.js開発環境 |
| zsh | sudo apt install -y zsh |
高機能シェル |
VS CodeとWSL2の連携
VS CodeはWSL2とのシームレスな連携機能を持っており、WindowsのVS CodeからLinux上のファイルを直接編集・デバッグできます。
WSL拡張機能のインストール
- Windows側のVS Codeを起動
- 拡張機能(Extensions)パネルを開く(Ctrl + Shift + X)
- 「WSL」または「Remote – WSL」で検索
- Microsoft公式の「WSL」拡張機能をインストール
WSL2でVS Codeを開く方法
方法1:ターミナルから開く(最も簡単)
- Ubuntuターミナルで作業ディレクトリに移動
- 以下のコマンドを実行:
code . - VS Codeが自動でWSLモードで起動し、Linux上のファイルを直接編集できる
方法2:VS Codeから接続する
- VS Codeを起動
- 左下の「><」アイコンをクリック(Remote Connection)
- 「WSLに接続する」を選択
- 接続先のディストリビューション(Ubuntu)を選択
VS Code+WSL2でできること
- Linux上のファイルをWindows側のVS Codeで直接編集
- VS CodeのターミナルでLinuxコマンドを実行
- LinuxのPython・Node.jsでデバッグ実行
- Linuxの拡張機能を使用(LSP・リンターなど)
- Git操作(Linux側のgitを使用)
ファイルシステムへのアクセス方法
WindowsからLinuxファイルにアクセスする
エクスプローラーのアドレスバーに以下を入力:
\\wsl$\Ubuntu\home\ユーザー名
または「Linux」という項目がエクスプローラーの左サイドバーに表示されている場合はそちらからアクセス可能。
| アクセス先 | パス |
|---|---|
| Linuxのホームディレクトリ | \\wsl$\Ubuntu\home\ユーザー名\ |
| Linuxのルートディレクトリ | \\wsl$\Ubuntu\ |
| Ubuntuアプリのルート | エクスプローラー左サイドバー「Linux」→「Ubuntu」 |
LinuxからWindowsファイルにアクセスする
Linux側からはWindowsのドライブが /mnt/ 以下にマウントされています:
| Windowsパス | Linux側のパス |
|---|---|
| C:\ | /mnt/c/ |
| D:\ | /mnt/d/ |
| C:\Users\ユーザー名\Desktop | /mnt/c/Users/ユーザー名/Desktop |
| C:\Users\ユーザー名\Downloads | /mnt/c/Users/ユーザー名/Downloads |
パフォーマンスの注意点:
WSL2でLinuxファイル(/home/以下)を操作する場合は高速ですが、Windowsファイル(/mnt/c/以下)への操作は低速になります。開発ファイルはなるべくLinuxのホームディレクトリ(~/)に置くことを推奨します。

よく使うLinuxコマンド集
ファイル・ディレクトリ操作
| コマンド | 説明 | 例 |
|---|---|---|
ls |
ファイル一覧表示 | ls -la(詳細表示) |
cd |
ディレクトリ移動 | cd ~/Documents |
pwd |
現在のディレクトリ表示 | pwd |
mkdir |
ディレクトリ作成 | mkdir myproject |
rm |
ファイル削除 | rm file.txt |
cp |
ファイルコピー | cp file.txt backup.txt |
mv |
ファイル移動・リネーム | mv old.txt new.txt |
cat |
ファイル内容表示 | cat config.yaml |
システム管理コマンド
| コマンド | 説明 | 例 |
|---|---|---|
sudo |
管理者権限で実行 | sudo apt install vim |
apt update |
パッケージリスト更新 | sudo apt update |
apt upgrade |
インストール済みパッケージを更新 | sudo apt upgrade -y |
apt install |
パッケージインストール | sudo apt install nginx |
which |
コマンドのパス確認 | which python3 |
ps aux |
実行中プロセス一覧 | ps aux | grep nginx |
top |
リソース監視 | top |
WSL特有の便利コマンド(Windows PowerShellから)
| コマンド | 説明 |
|---|---|
wsl --list --verbose |
インストール済みディストリビューションと状態確認 |
wsl --shutdown |
全WSLインスタンスを停止 |
wsl --set-version Ubuntu 2 |
UbuntuをWSL2に変換 |
wsl --update |
WSLカーネルを更新 |
wsl --export Ubuntu backup.tar |
ディストリビューションをバックアップ |
wsl --import Ubuntu C:\WSL backup.tar |
バックアップから復元 |
WSL1とWSL2の違いと使い分け
特定の用途ではWSL1の方が適している場合があります。WSL2がデフォルトですが、必要に応じてWSL1に切り替えることもできます。
| 状況 | 推奨 | 理由 |
|---|---|---|
| 一般的な開発作業 | WSL2 | 本物のLinuxカーネル・Docker対応 |
| Windowsファイルへの頻繁なアクセス | WSL1 | クロスファイルシステムのI/Oが高速 |
| Dockerコンテナ利用 | WSL2 | WSL2のみDockerフル対応 |
| 古いLinuxアプリの互換性 | WSL2 | 実際のLinuxカーネルで動作 |
| ポートフォワードが不要な場面 | WSL1 | WSL1はlocalhost直接アクセス可 |
特定のディストリビューションをWSL1に変更するコマンド(PowerShellで):
wsl --set-version Ubuntu 1
WSL2の便利な設定カスタマイズ
.wslconfigファイルでリソース制限を設定
WSL2はデフォルトでPCのRAMの50%・CPU全コアを使用します。以下のファイルを作成して制限できます:
作成場所:C:\Users\ユーザー名\.wslconfig
[wsl2]
memory=4GB
processors=2
swap=2GB
設定適用:PowerShellで wsl --shutdown を実行して再起動
wsl.confファイルでLinux側を設定
Ubuntu内の /etc/wsl.conf を作成・編集して設定します:
[automount]
enabled = true
root = /mnt/
options = "metadata,umask=22,fmask=11"
[network]
generateHosts = true
generateResolvConf = true
[interop]
enabled = true
appendWindowsPath = true
トラブルシューティング
1. 「WSL 2を実行するには、カーネルコンポーネントの更新が必要です」エラー
原因:WSL2 Linuxカーネルが古いまたは未インストール
対処法:
- PowerShellで
wsl --updateを実行 - またはMicrosoft公式サイトから「WSL2 Linuxカーネル更新プログラムパッケージ」を手動ダウンロード・インストール
2. 「仮想マシンプラットフォームのWindowsの機能が有効になっていません」エラー
対処法:
- PowerShellを管理者で実行
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart- PCを再起動
3. Ubuntuが起動しない・クラッシュする
対処法:
- PowerShellで
wsl --shutdownを実行 - Ubuntuを再度起動
- 解決しない場合は
wsl --unregister Ubuntuで登録を解除して再インストール(データが消えるため注意)
4. ネットワークに接続できない(インターネット不通)
対処法:
- PowerShellで
wsl --shutdown後に再起動 - Ubuntuで
sudo sh -c 'echo "nameserver 8.8.8.8" > /etc/resolv.conf'を実行してDNSを設定 - Windows Defenderまたはサードパーティウイルス対策ソフトがWSL通信をブロックしていないか確認
5. ファイルパーミッションの問題(Windowsファイルが実行できない等)
原因:/mnt/以下のWindowsファイルは全員755扱いになるためchmodが効かない場合がある
対処法:
- 作業ファイルをLinuxのホームディレクトリ(
~/)にコピーして作業 /etc/wsl.confでoptions = "metadata"を追加してメタデータ対応を有効化
6. WSL2からlocalhost:3000等にアクセスできない
背景:WSL2はWindowsと別のネットワーク名前空間を持つため、localhostが直接通じない場合がある
対処法:
- Windows 11 22H2以降は自動でポートフォワードされるため通常は不要
- 古いバージョンは
hostname -IでWSL2のIPを取得してアクセス
📦 WSL2・Linux開発環境におすすめのアイテム
FAQ
Q1. WSL2のUbuntuはどのディレクトリに保存されますか?
デフォルトでは C:\Users\ユーザー名\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu...\LocalState\ext4.vhdx に仮想ディスクファイルとして保存されます。別のドライブに移動することも可能です(wsl –exportとwsl –importを使用)。
Q2. WSL2でDockerは使えますか?
はい。Docker Desktop for Windowsを「WSL2バックエンド」で設定すれば、WSL2のUbuntuターミナルからdockerコマンドが使えます。仮想マシンより軽量で起動も高速です。
Q3. WSL2をアンインストールする方法は?
PowerShellで wsl --unregister Ubuntu でUbuntuを削除。次に「Windowsの機能の有効化または無効化」でWSLと仮想マシンプラットフォームのチェックを外してPCを再起動します。
Q4. 複数のLinuxディストリビューションを同時にインストールできますか?
はい。WSL2はUbuntu・Debian・Fedora・Kaliなど複数のディストリビューションを同時にインストールして使い分けられます。wsl -d ディストリビューション名 で切り替えます。
Q5. WSL2のファイルをWindowsのバックアップアプリでバックアップできますか?
WSL2のファイルはVHDXという仮想ディスク形式で保存されているため、通常のバックアップツールでは内部のファイル単位のバックアップは困難です。wsl --exportコマンドで定期的にエクスポートすることを推奨します。
Q6. WSL2上でGUIアプリは動きますか?
Windows 11(またはWindows 10のWSLgプレビュー)では「WSLg」機能によりLinuxのGUIアプリをWindowsデスクトップに表示できます。Firefox・geditなどのLinuxアプリがそのまま動きます。
Q7. ホームディレクトリ(〜)はどこですか?
Linux側では /home/ユーザー名/(~/)です。Windows側からは \\wsl$\Ubuntu\home\ユーザー名\ としてアクセスできます。
Q8. WSL2でSSHサーバーは動かせますか?
動かせます。sudo apt install openssh-server でインストール後、設定ファイルを調整して起動できます。ただしWSL2を終了するとSSHサーバーも停止するため、常時起動のサーバー用途には不向きです。
Q9. WSL2のメモリ消費を減らすには?
C:\Users\ユーザー名\.wslconfig ファイルに [wsl2] セクションを作成して memory=2GB などと指定することで上限を設けられます。設定後 wsl --shutdown で再起動してください。
Q10. WSL2はWindows HomeとProの両方で使えますか?
はい。WSL2はWindows 10/11のHome・Proどちらでも使用できます。WSL1は全エディションで、WSL2も仮想化機能が有効であれば全エディションで動作します。
Q11. WindowsのパスをLinux側でどう記述しますか?
バックスラッシュをスラッシュに変換し、ドライブ名を小文字にして /mnt/に続けます。例:C:\Users\taro\Documents → /mnt/c/Users/taro/Documents
まとめ
WSL2でUbuntu環境を構築してLinuxを活用する方法を完全解説しました。最後に重要なポイントを整理します。
- Windows 10/11に本物のLinuxカーネルが載る:仮想マシンより軽く・速く・互換性が高い
- インストールは
wsl --install1行:Windows 10 2004以降は超簡単 - VS Codeとの連携でプロ級の開発環境:
code .でLinuxファイルを直接編集 - ファイルシステムは相互アクセス可能:
/mnt/c/(Win→Linux)と\\wsl$\Ubuntu\(Linux→Win) - 開発ファイルはLinux側(~/)に置く:パフォーマンスの観点から重要
- メモリ制限は.wslconfigで設定:PCの負荷を調整できる
WSL2を導入することで、Windowsの使い慣れた環境を保ちながらLinux開発ワークフローをフルに活用できます。初めてLinuxに触れる方の学習環境としても最適ですし、現役エンジニアのサーバー管理・Docker開発にも強力な武器となります。ぜひこの機会にWSL2環境を構築してみてください。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!