WindowsでLinuxを使う: WSL
1. WSLって何?
さて、面白いテーマに入るね:Windowsを基本のOSとして使いながらLinuxをどう操作するか? WSLの世界へようこそ!
WSL (Windows Subsystem for Linux) は、Microsoftが提供する技術で、LinuxディストリビューションをWindows上で直接動かせるんだ。バージョンは2つあるよ:
- WSL1: WindowsとLinux間のシステムコールの互換性を提供する。Windowsカーネルを通じてLinuxの動作をエミュレートする方式だね。
- WSL2: フル機能のLinuxカーネルを軽量なVM(仮想マシン)で動作させる。このため、WSL2はWSL1よりも高速で、リアルなLinuxとの互換性が高いんだ。
WSLはまるで2つの世界の妥協点みたいなものだよね:Linuxのツールを使いながら、Windowsエコシステムに留まれる。開発者にとっては大きなメリットだよ!好きなLinuxコマンドを使い、プログラミング、テスト、そしてサーバー設定ができるんだ。
2. WSLがなぜ価値があるのか?
- 開発とテスト: WSLを使うことで、Linux環境で作業できるよ。コンピュータの再起動や仮想マシンの使用が不要だ。
- Dockerとコンテナ化: WSL2はDockerをサポートしてて、コンテナを扱うのに便利だね。
- ファイルシステムの統合: WindowsとLinux間で簡単にファイルを共有できるよ。1つのファイルシステムでね。
- 簡単なセットアップ: WSLのインストールはほんの数分で終わるよ。
WSLと仮想マシンの違いは?
- 仮想化が不要. VirtualBoxやVMware、Hyper-Vとかをインストールする必要がないんだ。WSLはシステムレベルで動作するんだよ。
- リソース消費が少ない. WSLは通常の仮想マシンよりメモリやCPUのリソースを少なく使うよ。
- Windowsとの統合. WindowsとLinuxのファイルを簡単に共有できるし、LinuxとWindowsコマンドを一緒に使うこともできる(!)。それに同じネットワークインターフェースも利用可能だ!
3. WSLのインストール
1. システム要件の確認
始める前に、システムが最低要件を満たしているか確認してください:
- Windows 10 (バージョン2004以降) または Windows 11.
- BIOS/UEFIで仮想化が有効化されていること。
Windowsのバージョンを確認するには、PowerShellを開いて以下を実行してください:
winver
次のようなウィンドウが表示されるはずです:
WindowsでPowerShellを起動する方法がわからない場合は、Win+Sを押してpowershellと入力してください。
2. WSLを有効化
管理者権限でPowerShellを開き、次のコマンドを実行してください:
wsl --install
このコマンドは自動的にWSLをインストールし、Linuxカーネルをダウンロードし、WSL2をデフォルトバージョンとして設定します。
何らかの理由でこのコマンドが動作しない場合は、Windowsの追加機能で手動でWSLを有効化することができます:
- 「コントロールパネル」 → 「プログラムと機能」 → 「Windowsの機能の有効化または無効化」を開きます。
- 以下を有効化:
- Windows Subsystem for Linux.
- 仮想マシンプラットフォーム.
その後、コンピュータを再起動してください。
3. ディストリビューションの選択とインストール
WSLでは、Ubuntu、Debian、Kali Linuxなどの人気のあるLinuxディストリビューションをインストールできます。利用可能なディストリビューションの一覧を表示するには、以下を実行してください:
wsl --list --online
利用可能なディストリビューションのリストが表示されます:
PS C:\Users\Admin> wsl --list --online
The following is a list of valid distributions that can be installed.
Install using 'wsl.exe --install <Distro>'.
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
Ubuntu-24.04 Ubuntu 24.04 LTS
OracleLinux_7_9 Oracle Linux 7.9
OracleLinux_8_7 Oracle Linux 8.7
OracleLinux_9_1 Oracle Linux 9.1
openSUSE-Leap-15.6 openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP5 SUSE Linux Enterprise 15 SP5
SUSE-Linux-Enterprise-15-SP6 SUSE Linux Enterprise 15 SP6
openSUSE-Tumbleweed openSUSE Tumbleweed
たとえば、Ubuntuをインストールするには以下を実行してください:
wsl --install -d Ubuntu
インストール完了後、ディストリビューションを起動して設定を完了してください(例: ユーザー名とパスワードの設定など)。
3. デフォルトでWSL2を設定する
WSL2を利用するために(これ、ほんとおすすめだよ)、まずWSL2が有効になってるのを確認してね。デフォルトバージョンとしてWSL2を設定しよう:
wsl --set-default-version 2
もしすでにWSL1でディストリビューションをインストールしてたら、WSL2にアップグレードできるよ:
wsl --set-version <ディストリビューション名> 2
例:
wsl --set-version Ubuntu 2
4. WSLとWindowsの統合
WSLはWindowsと素晴らしく統合されており、両方のシステムの利点を活用できます。これが重要なポイントです:
1. ファイル共有
WSLはWindowsのファイルシステムを/mnt
ディレクトリにマウントします。例えば:
cd /mnt/c/Users/あなたの名前
Linuxから直接Windowsのファイルを操作できます。同様に、Windowsから\\wsl$\<ディストリビューション名>
のパスを使ってWSLのファイルにアクセスできます。
2. WindowsコマンドをLinuxで使用
そう、WSLから直接Windowsのコマンドを実行できます。例えば:
explorer.exe .
現在のディレクトリをエクスプローラーで開きます。
3. PowerShellでLinuxコマンドを使用
WSLを使うと、PowerShellから直接Linuxコマンドを実行することもできます。例えば:
wsl ls
5. 実際の開発でWSLを使う
ウェブサーバーの操作
NginxやApacheサーバーをWSLで起動して、Windowsのブラウザからアクセスすることができます。例えば:
1. WSLでNginxをインストール:
sudo apt update
sudo apt install nginx
2. サーバーを起動:
sudo service nginx start
3. ブラウザを開いて、http://localhost
にアクセスしてください。
Dockerのインストール
WSL2はDockerを完全にサポートしています。WindowsにDocker Desktopをインストールすると、自動的にWSL2と統合されます。
6. WSLで使える便利なコマンド
インストール済みのディストリビューションの確認:
wsl --list --verbose
インストールされているすべてのディストリビューション、そのバージョンとステータスを表示するよ。
すべてのディストリビューションを停止する:
wsl --shutdown
ディストリビューションの削除(注意してね!):
wsl --unregister <ディストリビューション名>
特定のディレクトリでWSLを開く:
wsl ~/
7. よくあるエラーとその解決方法
1. エラー:「WSL is not enabled」
もし「WSLが有効化されていない」と表示された場合は、「コントロールパネル」またはPowerShellを使って有効化したことを確認してね。また、プロセッサが仮想化をサポートしているか(BIOSで仮想化機能が有効化されているか)もチェックしてね。
2. コマンド wsl --install
が動作しない
これはWindowsのバージョンが古いためかも。オペレーティングシステムを最新バージョンにアップデートしてね。
3. Dockerの起動に関する問題
使っているディストリビューションがWSL1ではなくWSL2を使用しているか確認してね。以下のコマンドで確認できるよ:
wsl --list --verbose
4. WSLからサーバーに接続できない
Windowsのfirewallが接続をブロックしていないか確認してね。
8. 実践課題
- WSLとUbuntuディストリビューションをインストールしてね。
- ディストリビューションのWSLバージョンを確認する:
wsl --list --verbose
WSL内のディレクトリ
/mnt/c/Users/あなたの名前/Documents
にテキストファイルtest.txt
を作成しよう:echo "こんにちは、WSL!" > /mnt/c/Users/あなたの名前/Documents/test.txt
PowerShellでファイルの内容を確認してみよう:
type C:\Users\あなたの名前\Documents\test.txt
追加課題: Nginxをインストールして起動し、ブラウザで
http://localhost
を開いてみてね。
さて、これでLinuxをWindowsで使い始めるまでの一連の流れを学んだよね。このツールを使えば、どんな作業環境でも簡単に素早くセットアップ可能だよ。
GO TO FULL VERSION