※本ページにはプロモーション(広告)が含まれています
【2026年最新版】WindowsでWSL2(Ubuntu)をセットアップする方法【完全ガイド】
「WindowsでもLinuxのコマンドを使いたい」「開発環境をLinuxで構築したいけど、デュアルブートは面倒」——そんな方にとって、WSL2(Windows Subsystem for Linux 2) は最高の選択肢です。
WSL2を使えば、Windows上でUbuntuなどのLinuxディストリビューションをほぼネイティブ速度で動かせます。仮想マシンのような重さもなく、WindowsとLinuxのファイルシステムをシームレスに行き来できるため、Web開発・データサイエンス・機械学習など幅広い用途で活躍します。
本記事では、WSL2のインストールからUbuntuの初期設定、ファイルシステムの扱い方、開発環境としての実践的な活用方法まで、2026年最新情報をもとに丁寧に解説します。
- WSL2とWSL1の違い、使うべき理由
- Windows 10/11でWSL2を有効化する手順
- Ubuntuのインストールと初期設定
- WindowsとLinux間のファイルシステムの扱い方
- Node.js・Python・Dockerなど開発環境の構築方法
- よくあるエラーとトラブルシューティング

1. WSL2とは?WSL1との違い
WSL(Windows Subsystem for Linux)は、Microsoft が Windows に標準搭載した「Linux互換環境」です。2019年にリリースされた WSL2 は、WSL1 から大幅に改善された第2世代です。
WSL2の特徴
- 本物のLinuxカーネルを搭載: 仮想マシン技術(Hyper-V)を使い、本物のLinuxカーネルを実行する
- ファイルI/Oが高速: WSL1と比べてファイル操作が大幅に高速化
- Dockerとの親和性が高い: Docker Desktop for Windows は WSL2 バックエンドを推奨している
- systemd対応: 2022年以降、systemd(Linuxのサービス管理)が利用可能になった
WSL1 vs WSL2 比較表
| 項目 | WSL1 | WSL2 |
|---|---|---|
| Linuxカーネル | 互換レイヤー(変換) | 本物のLinuxカーネル |
| ファイルI/O速度 | Windowsファイルシステムで高速 | Linuxファイルシステム内で高速 |
| システムコール互換性 | 一部非対応あり | ほぼ完全互換 |
| Docker対応 | 制限あり | ネイティブ対応 |
| メモリ使用量 | 少ない | やや多い(動的割り当て) |
| 起動速度 | 速い | 速い(数秒以内) |
新規でインストールする場合は WSL2 一択です。既にWSL1を使っている場合もWSL2への移行を強くおすすめします。
動作要件
| OS | 最低要件 |
|---|---|
| Windows 11 | 全エディション対応(ビルド 22000 以降) |
| Windows 10 | バージョン 2004(ビルド 19041)以降、または 2022年5月更新以降 |
2. WSL2のインストール(最短1コマンド)
Windows 10 バージョン2004 以降 および Windows 11 では、たった1つのコマンドでWSL2とUbuntuをまとめてインストールできます。
手順1: PowerShellを管理者として開く
- スタートメニューを右クリック(またはWindowsキー + X)する
- 「Windows PowerShell(管理者)」または「ターミナル(管理者)」をクリックする
- 「このアプリがデバイスに変更を加えることを許可しますか?」ダイアログで「はい」をクリックする
手順2: WSL2とUbuntuをインストールする
以下のコマンドを入力してEnterを押します。
wsl --install
このコマンドひとつで以下がすべて自動実行されます:
- 「仮想マシンプラットフォーム」Windowsオプション機能の有効化
- 「Linux用Windowsサブシステム」Windowsオプション機能の有効化
- Linuxカーネルの最新バージョンのダウンロードおよびインストール
- WSL2のデフォルトバージョンへの設定
- Ubuntuのダウンロードおよびインストール
手順3: 特定のディストリビューションを選んでインストールする場合
Ubuntu以外のディストリビューションをインストールしたい場合は、以下のコマンドで利用可能な一覧を確認できます。
# 利用可能なディストリビューションの一覧を表示
wsl --list --online
# 特定のディストリビューションをインストール(例: Ubuntu 24.04)
wsl --install -d Ubuntu-24.04

3. Ubuntuの初期設定
再起動後にUbuntuを起動すると、初回セットアップが始まります。
手順1: ユーザー名とパスワードの設定
スタートメニューから「Ubuntu」を起動すると、以下のように表示されます。
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username:
- 任意のユーザー名を入力してEnterを押す(小文字英字がおすすめ)
- パスワードを入力する(入力中は文字が表示されないので注意)
- 同じパスワードを再入力して確認する
sudo コマンドの実行時にこのパスワードが求められます。
手順2: パッケージを最新化する
初回起動後は、まずパッケージ一覧と既存パッケージを最新状態にしましょう。
sudo apt update && sudo apt upgrade -y
sudo apt update はパッケージ一覧の更新、sudo apt upgrade -y はインストール済みパッケージの更新です。-y は確認プロンプトをすべて「はい」で自動応答するオプションです。
手順3: よく使う基本ツールをインストールする
sudo apt install -y curl wget git build-essential unzip
| パッケージ | 用途 |
|---|---|
curl |
URLからファイルのダウンロード・API呼び出し |
wget |
ファイルのダウンロード |
git |
バージョン管理システム |
build-essential |
C/C++コンパイラ(gcc/g++/make) |
unzip |
ZIPファイルの解凍 |
4. ファイルシステムの扱い方
WSL2を使いこなすうえで最も重要なのが、WindowsとLinuxのファイルシステムの関係を理解することです。
LinuxからWindowsのファイルにアクセスする
Windows側のドライブ(C: ドライブなど)は、Linux内から /mnt/ 以下にマウントされています。
# Windowsのデスクトップに移動する例
cd /mnt/c/Users/ユーザー名/Desktop
# Windowsのダウンロードフォルダに移動する例
cd /mnt/c/Users/ユーザー名/Downloads
# ドライブの一覧を確認する
ls /mnt/
WindowsからLinuxのファイルにアクセスする
エクスプローラーのアドレスバーに以下を入力すると、Linux側のホームディレクトリを開けます。
\\wsl$\Ubuntu\home\ユーザー名
またはエクスプローラーの左サイドバーに「Linux」というアイコンが追加されており、そこから直接アクセスすることもできます。
パフォーマンス上の注意点
/mnt/c/ 以下(Windows側)にプロジェクトを置くと、ファイルI/Oが大幅に低下します。
| 場所 | 速度 | 推奨用途 |
|---|---|---|
Linux側(~/ 等) |
非常に速い | Linuxで使うプロジェクトファイル全般 |
Windows側(/mnt/c/) |
遅い(要注意) | Windowsアプリと共有するファイルの参照のみ |
5. VS CodeをWSL2と連携させる
Windows上のVisual Studio Code(VS Code)は、WSL2と非常に相性が良く、Windowsのエディタ画面を使いながらLinux環境でコードを実行できます。
VS Code + WSL拡張機能のセットアップ
- Windows側にVS Codeをインストールする(code.visualstudio.com)
- VS Codeを開き、拡張機能マーケットプレイスで「WSL」(ms-vscode-remote.remote-wsl)を検索・インストールする
- Ubuntu(WSL)のターミナルを開く
- プロジェクトディレクトリに移動して
code .と入力する
# WSLターミナルから VS Code を開く
cd ~/my-project
code .
VS Codeが起動し、左下に「WSL: Ubuntu」と表示されれば接続成功です。ターミナルも自動的にWSL2のbashになります。

6. 開発環境の構築(Node.js / Python / Docker)
WSL2のUbuntu上に主要な開発環境を構築する手順を解説します。
Node.jsのインストール(nvm使用)
Node.jsはバージョン管理ツール nvm(Node Version Manager)を使ってインストールするのが定番です。
# nvmをインストールする
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# シェルを再読み込みする
source ~/.bashrc
# nvmのインストール確認
nvm --version
# 最新LTS版のNode.jsをインストールする
nvm install --lts
# インストール済みバージョンを確認
node --version
npm --version
Pythonのインストール(pyenv使用)
# pyenv の依存パッケージをインストール
sudo apt install -y make libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev libncurses5-dev \
libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev
# pyenvをインストールする
curl https://pyenv.run | bash
# ~/.bashrc に以下を追記する
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
# シェルを再読み込みする
source ~/.bashrc
# Python 3.12 をインストールする(例)
pyenv install 3.12.0
pyenv global 3.12.0
# バージョン確認
python --version
Dockerのインストール
Docker Desktop for Windows を使う方法と、WSL2内に直接 Docker Engine をインストールする方法があります。ここでは WSL2 内に直接インストールする手順を紹介します。
# Dockerの公式インストールスクリプトを使う
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
# 現在のユーザーをdockerグループに追加する(sudo不要にする)
sudo usermod -aG docker $USER
# グループ変更を反映する(一度ログアウト・ログインするか以下を実行)
newgrp docker
# Dockerの動作確認
docker --version
docker run hello-world
gitの設定
# ユーザー名とメールアドレスを設定する
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
# デフォルトブランチ名をmainに設定する
git config --global init.defaultBranch main
# 設定確認
git config --list
7. WSL2の便利な管理コマンド
PowerShellから WSL2 を管理する際によく使うコマンドをまとめます。
インストール済みディストリビューションの確認
# インストール済みディストリビューションと状態を一覧表示
wsl --list --verbose
表示例:
NAME STATE VERSION
* Ubuntu Running 2
WSL2の停止・再起動
# 全ディストリビューションを停止する
wsl --shutdown
# 特定のディストリビューションを停止する
wsl --terminate Ubuntu
# WSL2のバージョンを確認する
wsl --version
Linuxカーネルのアップデート
# WSLおよびLinuxカーネルを最新バージョンに更新する
wsl --update
WSL2のメモリ使用量を制限する
WSL2はデフォルトで搭載メモリの50%まで使用する設定になっています。制限を設けたい場合は .wslconfig ファイルで調整できます。
- エクスプローラーまたはメモ帳で
C:\Users\ユーザー名\.wslconfigを作成する - 以下の内容を記述して保存する
[wsl2]
memory=4GB # 最大メモリを4GBに制限
processors=4 # 使用するCPUコア数を4に制限
swap=2GB # スワップサイズを2GBに設定
設定後は wsl --shutdown で一度終了してから再起動すると反映されます。
8. よくあるエラーとトラブルシューティング
エラー: 「仮想マシン プラットフォームが有効になっていません」
原因: Windowsの「仮想マシン プラットフォーム」機能が無効になっている。
対処法: PowerShell(管理者)で以下のコマンドを実行し、再起動する。
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
エラー: 「WslRegisterDistribution failed with error: 0x80370102」
原因: BIOSまたはUEFIの設定で仮想化機能(Intel VT-xまたはAMD-V)が無効になっている。
対処法:
- PCを再起動してBIOS/UEFIセットアップ画面を開く(起動時にDel、F2、F10などのキーを押す)
- 「Advanced」または「CPU Configuration」の項目で仮想化機能(Virtualization Technology)を「Enabled」に変更する
- 設定を保存して再起動する
エラー: 「参照先のオブジェクトの種類が見つかりません」(WSL2起動時)
原因: ネットワークドライバーやWindowsセキュリティソフトとの競合が多い。
対処法: PowerShell(管理者)で以下を実行し、再起動する。
netsh winsock reset
WSL2のネットワーク確認方法
WSL2内からネットワークの状態を確認したい場合は以下のコマンドを使います。
# IPアドレスを確認する(Linux側)
ip addr show eth0
# Windowsホストへの疎通確認
ping 8.8.8.8
Windows側のネットワーク情報を確認する場合は、PowerShellで以下のコマンドを使います(Windows側のシェルで実行してください)。
ipconfig /all
ipconfig コマンドはWindows PowerShellまたはコマンドプロンプトで実行するコマンドです。WSL2のLinuxターミナル内では使えません。Linux側では ip addr コマンドを使用してください。
よくある質問(FAQ)
Q1. Windows HomeエディションでもWSL2は使えますか?
はい、使えます。WSL2はWindows 10/11のHome・Pro・Educationなど全エディションで利用可能です。以前はHyper-VがPro以上限定でしたが、WSL2は専用の仮想化技術を使っているため、Homeエディションでも動作します。
Q2. WSL2とVMware・VirtualBoxは共存できますか?
条件次第で共存できます。Hyper-Vが有効になっているとVMwareやVirtualBoxのパフォーマンスに影響が出る場合があります。VMware Workstation 15.5.5以降、VirtualBox 6.0以降ではHyper-Vとの共存に対応しています。ただし、古いバージョンのVMwareやVirtualBoxとは競合する可能性があるため、使用ソフトのバージョンを確認してください。
Q3. WSL2でGUI(デスクトップ環境)は使えますか?
はい、Windows 11(またはWindows 10ビルド19044以降)では WSLg(WSL GUI)機能によりLinuxのGUIアプリをそのままWindowsデスクトップに表示できます。ファイルマネージャーや画像エディタ、GIMPなどのLinux GUIアプリが使えます。ただしデスクトップ環境(GNOMEやKDE全体)を動かすのは複雑なため、必要に応じて調べてみてください。
Q4. WSL2のUbuntuを完全に削除する方法は?
スタートメニューから「Ubuntu」を右クリック → 「アンインストール」で削除できます。またはPowerShellで wsl --unregister Ubuntu を実行するとすべてのデータごと削除されます。アンインストール後はLinux側のすべてのファイルが消えるため、事前にバックアップを取ってください。
Q5. WSL1からWSL2に移行するにはどうすればいいですか?
PowerShellで以下のコマンドを実行します。wsl --set-version Ubuntu 2。変換には数分かかりますが、既存のファイルやデータはそのまま引き継がれます。また、今後インストールするディストリビューションのデフォルトをWSL2にするには wsl --set-default-version 2 を実行してください。
まとめ
WSL2を使えば、Windowsマシンを使いながら本格的なLinux開発環境を構築できます。本記事の要点を振り返りましょう。
- WSL2は
wsl --installの1コマンドで簡単にインストールできる - WSL2はWSL1よりも高い互換性・高速ファイルI/Oを持ち、Dockerとの相性も抜群
- プロジェクトファイルはLinux側(
~/)に置くのがパフォーマンス上の鉄則 - VS Code の WSL 拡張機能を使えば、Windowsのエディタ上でLinux開発ができる
- Node.js・Python・Dockerなど主要な開発ツールもUbuntu上で問題なく動作する
.wslconfigでメモリ・CPU使用量のチューニングができる
最初の設定さえ済ませてしまえば、あとは普通のUbuntu環境として使えます。Web開発・機械学習・データエンジニアリングなど、どんな開発用途でも強力なパートナーになります。ぜひWSL2を使いこなして、Windows + Linux のハイブリッド開発環境を体験してみてください。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!