Windows 11 で WSL2 と Ubuntu をインストールする方法
こんにちは!今回は Windows 11 に WSL2(Windows Subsystem for Linux 2)を有効化し、Ubuntu をインストールする方法を詳しく解説します。これにより、Windows マシン上で Linux 環境を利用した開発が可能になります。
WSL2 とは?
WSL2 は、Windows 上で Linux バイナリを実行するための Microsoft の技術です。第一世代の WSL と比較して、WSL2 は以下の特徴があります:
- 完全な Linux カーネルを使用
- システムコールの互換性が大幅に向上
- ファイルシステムのパフォーマンスが向上
- Docker などのコンテナ技術との親和性が高い
つまり、WSL2 は Windows 上でより本格的な Linux 環境を提供してくれるのです。
インストール方法
WSL2 と Ubuntu のインストールには、主に 2 つの方法があります:
- コマンドプロンプトまたは PowerShell を使用する方法(簡単な方法)
- 手動で各機能を有効化する方法(詳細な設定が必要な場合)
ここでは、まず簡単な方法から紹介します。
方法 1:単一コマンドでのインストール(推奨)
Windows 11 では、単一のコマンドで WSL2 と Ubuntu をインストールできます。
- 管理者権限で PowerShell を開きます(スタートメニューで「PowerShell」を右クリックし、「管理者として実行」を選択)
- 以下のコマンドを実行します:
wsl --install
このコマンドは以下の処理を自動的に行います:
- 仮想マシンプラットフォーム機能を有効化
- WSL コンポーネントをインストール
- WSL2 をデフォルトバージョンとして設定
- Ubuntu の最新版をダウンロードしてインストール
コマンド実行後、システムの再起動が必要です。再起動後、Ubuntu が自動的に起動し、初期設定が始まります。
方法 2:手動でのインストール(詳細設定が必要な場合)
特定の Linux ディストリビューションを選択したい場合や、より詳細な設定を行いたい場合は、手動でインストールすることもできます。
1. WSL 機能を有効化する
管理者権限の PowerShell で以下のコマンドを実行します:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
2. 仮想マシンプラットフォームを有効化する
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
3. システムを再起動する
上記のコマンドを実行した後、一度システムを再起動します。
4. WSL2 Linux カーネル更新パッケージをダウンロードしてインストールする
Microsoft Storeから「WSL 2 Linux カーネル更新パッケージ」をダウンロードしてインストールします。
あるいは、以下のリンクから直接ダウンロードすることもできます: WSL2 Linux カーネル更新パッケージ - x64 マシン用
5. WSL2 をデフォルトバージョンとして設定する
wsl --set-default-version 2
6. Ubuntu をインストールする
Microsoft Store を開き、「Ubuntu」を検索してインストールします。 あるいは、PowerShell から以下のコマンドでインストールすることもできます:
wsl --install -d Ubuntu
特定のバージョンを指定する場合は以下のようにします:
# Ubuntu 22.04をインストールする場合
wsl --install -d Ubuntu-22.04
7. 利用可能な Linux ディストリビューションを確認する
他の Linux ディストリビューションをインストールしたい場合は、以下のコマンドで利用可能なディストリビューションを確認できます:
wsl --list --online
Ubuntu の初期設定
Ubuntu を初めて起動すると、ユーザーアカウントの設定が求められます。
- Ubuntu を起動します(スタートメニューから「Ubuntu」を選択)
- ユーザー名を入力します(任意の名前で OK)
- パスワードを設定します(入力時にはパスワードは表示されませんが、正常に入力されています)
- パスワードを再入力して確認します
これで基本的なセットアップは完了です。
パッケージを最新の状態に更新する
Ubuntu をインストールしたら、まずパッケージを最新の状態に更新することをお勧めします:
sudo apt update && sudo apt upgrade -y
このコマンドは、パッケージリストを更新(apt update
)し、インストール済みのパッケージを最新バージョンにアップグレード(apt upgrade
)します。-y
オプションは、確認プロンプトに自動的に「はい」と答えます。
WSL2 の便利な機能と設定
1. Windows と Linux 間のファイルアクセス
WSL2 では、Windows と Linux 間でファイルを簡単に共有できます。
Windows から Ubuntu のファイルにアクセスする
エクスプローラーのアドレスバーに以下を入力します:
\\wsl$\Ubuntu
または、Ubuntu のホームディレクトリにアクセスするには:
\\wsl$\Ubuntu\home\あなたのユーザー名
Ubuntu から Windows のファイルにアクセスする
Windows のドライブは /mnt/
ディレクトリにマウントされています。例えば:
# Cドライブにアクセス
cd /mnt/c
# ユーザーフォルダにアクセス
cd /mnt/c/Users/あなたのWindowsユーザー名
2. メモリ使用量の設定
WSL2 は仮想マシンを使用しているため、メモリ使用量を制限することができます。ホームディレクトリに .wslconfig
ファイルを作成します:
notepad "$env:USERPROFILE\.wslconfig"
以下の内容を記述します(例:メモリを 6GB、プロセッサを 4 コアに制限):
[wsl2]
memory=6GB
processors=4
設定を反映させるには、WSL を再起動します:
wsl --shutdown
3. Ubuntu の起動と終了
起動方法
- スタートメニューから「Ubuntu」を選択
- PowerShell やコマンドプロンプトから
wsl
と入力 - 特定のディストリビューションを起動するには
wsl -d Ubuntu
終了方法
- Ubuntu シェルで
exit
と入力 - すべての WSL インスタンスをシャットダウンするには、PowerShell から
wsl --shutdown
トラブルシューティング
WSL のバージョン確認
現在インストールされている WSL のバージョンを確認するには:
wsl -l -v
出力の「VERSION」列が「2」であることを確認してください。
Ubuntu が WSL1 で動作している場合
Ubuntu が WSL1 で動作している場合は、以下のコマンドで WSL2 に変換できます:
wsl --set-version Ubuntu 2
WSL コマンドが見つからないエラー
「WSL コマンドが見つかりません」というエラーが表示される場合は、Windows 機能の「Windows Subsystem for Linux」が有効になっていない可能性があります。以下の手順で有効化してください:
- コントロールパネル → プログラム → Windows の機能の有効化または無効化
- 「Windows Subsystem for Linux」にチェックを入れる
- システムを再起動する
インストール中のエラー
インストール中に「WSL2 ではカーネルコンポーネントの更新が必要です」のようなエラーが表示される場合は、WSL2 Linux カーネル更新パッケージをインストールしていない可能性があります。前述のリンクからダウンロードしてインストールしてください。
WSL2 と Ubuntu を使った開発環境の構築
WSL2 と Ubuntu をインストールしたら、以下のような開発環境を構築することができます:
開発ツールのインストール:
sudo apt install build-essential git curl wget
プログラミング言語のインストール:
# Node.jsのインストール例 curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt install -y nodejs # Pythonのインストール例 sudo apt install python3 python3-pip
他の開発ツールのインストール: 必要に応じて、開発に必要なツールをインストールしましょう。 例えば、Neovim を使用する場合:
sudo apt install neovim
まとめ
この記事では、Windows 11 で WSL2 を有効化し、Ubuntu をインストールする方法を紹介しました。WSL2 を使うことで、Windows マシン上で本格的な Linux 環境を利用した開発が可能になります。
WSL2 と Ubuntu のインストールが完了したら、Fish shell のセットアップやGit のインストールなどの記事も参考にして、より効率的な開発環境を構築してみてください。