WSL2マスターへの道:基本コマンドとバックアップ戦略チートシート
Windows上でLinux環境を効率的に管理するための実践的ガイド

Windows Subsystem for Linux 2 (WSL2) は、Windows上で本格的なLinux環境をシームレスに利用できる強力な機能です。開発、テスト、学習など、その用途は多岐にわたります。この記事では、WSL2を使いこなすための基本的なコマンドから、環境のバックアップ・復元、さらには複製まで、実践的なテクニックを網羅したチートシートを提供します。
WSL2の基本操作コマンドチートシート
まずはWSL2のインストールから日常的な管理まで、必須となるコマンドを見ていきましょう。これらのコマンドは、WindowsのコマンドプロンプトまたはPowerShellで実行します。
目的 | コマンド | 補足 |
---|---|---|
WSLの初期セットアップ | ||
WSLのインストール | wsl --install | WSL機能、仮想マシンプラットフォームを有効化し、デフォルトのLinuxディストリビューション(通常Ubuntu)をインストールします。 |
WSLコンポーネントの更新 | wsl --update | WSLカーネルや関連コンポーネントを最新版に更新します。 |
WSLバージョンの確認 | wsl --version | インストールされているWSLのバージョン情報を表示します。 |
WSL2を既定バージョンに設定 | wsl --set-default-version 2 | 新規にインストールされるディストリビューションがWSL2で動作するように設定します。 |
ディストリビューション管理 | ||
インストール済み一覧 (短縮) | wsl -l または wsl --list | インストールされているLinuxディストリビューションの一覧を表示します。 |
インストール済み一覧 (詳細) | wsl -l -v または wsl --list --verbose | ディストリビューションの状態(Running/Stopped)とWSLバージョン(1 or 2)も表示します。 |
WSL1からWSL2への変換 | wsl --set-version <ディストリビューション名> 2 | 指定したディストリビューションをWSL2で動作するように変換します。逆(WSL1へ)も可能です。 |
ディストリビューションの起動 | wsl -d <ディストリビューション名> | 指定したディストリビューションを起動します。例: wsl -d Ubuntu-22.04 |
特定ディストリビューションの停止 | wsl --terminate <ディストリビューション名> | 指定したディストリビューションを即座に停止します。例: wsl --terminate Ubuntu-22.04 |
全てのWSLインスタンスを停止 | wsl --shutdown | 実行中の全てのWSLディストリビューションとWSL2仮想マシンをシャットダウンします。 |
ディストリビューションの登録解除 | wsl --unregister <ディストリビューション名> | ディストリビューションをWSLから削除します。データも消えるため注意! 例: wsl --unregister Ubuntu-22.04-nix |
ディストリビューションのアンインストール (補足) | ||
GUIからのアンインストール | スタート → 設定 → アプリ → インストール済みアプリ から該当ディストリビューションを選択してアンインストール | 通常はこの方法でOKです。 |
GUI削除後の情報残存対処 | wslconfig /u <ディストリビューション名> (古いコマンド) | wsl --unregister を使うのが現在の推奨です。このコマンドは古いバージョンのWSLで利用されていました。 |
WSLディストリビューションのバックアップ、復元、複製戦略
WSL環境をカスタマイズしていくと、設定やインストールしたソフトウェアを含めてバックアップを取りたくなることがあります。また、特定の状態をテンプレートとして複数の環境を構築したい場合もあるでしょう。wsl --export
と wsl --import
コマンドがこれを可能にします。
1. バックアップ (Export)
現在のディストリビューションの状態を .tar
ファイルとしてエクスポートします。
コマンド書式:
wsl --export <ディストリビューション名> <エクスポート先ファイルパス.tar>
実践例: プロジェクトの進捗やツールのインストール状況に応じて、段階的にバックアップファイルを作成しておくと安心です。
- インストール直後のクリーンな状態:
wsl --export Ubuntu-22.04 "D:\WSL_Backups\Ubuntu-22.04_clean_install.tar"
- 基本開発ツールインストール後 (Docker, Git, Node.jsなど):
wsl --export Ubuntu-22.04 "D:\WSL_Backups\Ubuntu-22.04_dev_base.tar"
- Webサーバー (Nginxなど) 設定後:
(補足: パスはご自身の環境に合わせて変更してください。また、ファイル名に日付やバージョンを含めると管理しやすくなります。)wsl --export Ubuntu-22.04 "D:\WSL_Backups\Ubuntu-22.04_web_server.tar"
2. 復元 (Import)
エクスポートした .tar
ファイルからディストリビューションを復元(インポート)します。インポート時には新しいディストリビューション名を指定できるため、元の環境とは別に復元することも可能です。
コマンド書式:
wsl --import <新しいディストリビューション名> <インストール先ディレクトリ> <インポート元ファイルパス.tar> [--version 2]
<新しいディストリビューション名>
: WSL上で認識される新しい名前。<インストール先ディレクトリ>
: このディストリビューションの仮想ディスクファイルなどが格納されるWindows上のディレクトリ。--version 2
(オプション): WSL2としてインポートする場合に指定。通常は指定します。
実践例:
上記でバックアップしたファイルを Ubuntu-22.04-dev-restore
という名前で、D:\WSL_Distros\UbuntuDevRestore
に復元する場合。
# インストール先ディレクトリを作成 (存在しない場合) New-Item -ItemType Directory -Path "D:\WSL_Distros\UbuntuDevRestore" wsl --import Ubuntu-22.04-dev-restore "D:\WSL_Distros\UbuntuDevRestore" "D:\WSL_Backups\Ubuntu-22.04_dev_base.tar" --version 2
3. 複製 (Copy)
既存のディストリビューションを直接コピーして、新しいディストリビューションとして登録することも可能です。これは、--export
の出力を標準出力 (-
) にし、それをパイプで --import
の標準入力 (-
) に渡すことで実現できます。
コマンド書式:
wsl --export <コピー元ディストリビューション名> - | wsl --import <新しいディストリビューション名> <インストール先ディレクトリ> - [--version 2]
実践例:
既存の Ubuntu-22.04
を Ubuntu-22.04-testing
として D:\WSL_Distros\UbuntuTesting
にコピーする場合。
# インストール先ディレクトリを作成 (存在しない場合) New-Item -ItemType Directory -Path "D:\WSL_Distros\UbuntuTesting" wsl --export Ubuntu-22.04 - | wsl --import Ubuntu-22.04-testing "D:\WSL_Distros\UbuntuTesting" - --version 2
4. インポート/リストア後のデフォルトユーザー設定
wsl --import
でディストリビューションを復元したり、複製したりすると、デフォルトのログインユーザーが root
になることがあります。セキュリティ上、また利便性のためにも、元のユーザー(または任意の一般ユーザー)でログインできるように設定を変更しましょう。
-
まず、新しいディストリビューションに
root
でログインします。wsl -d <新しいディストリビューション名> -u root
または、単に
wsl -d <新しいディストリビューション名>
で起動し、root
でプロンプトが表示されることを確認します。 -
ディストリビューション内で
/etc/wsl.conf
ファイルを作成または編集します。sudo nano /etc/wsl.conf
(nano以外のエディタ、例えば
vi
でも構いません) -
以下の内容を追記または編集し、
<あなたのユーザー名>
を実際のユーザー名に置き換えます。[user] default = <あなたのユーザー名>
-
ファイルを保存してエディタを終了します (nanoの場合は
Ctrl+O
,Enter
,Ctrl+X
)。 -
変更を有効にするため、このディストリビューションを一度完全に停止させます。WindowsのPowerShell/コマンドプロンプトで以下を実行します。
wsl --terminate <新しいディストリビューション名>
次回以降、wsl -d <新しいディストリビューション名>
で起動すると、設定したデフォルトユーザーでログインできるようになります。
まとめ
WSL2はWindows上でLinux環境を効率的に利用するための素晴らしいツールです。本チートシートで紹介したコマンドを使いこなすことで、環境構築、日々の運用、そして万が一のためのバックアップまでスムーズに行えるようになるでしょう。特にバックアップと復元のテクニックは、開発環境を安定して維持し、新しい試みにも臆することなく挑戦するための強力な武器となります。
ぜひ、これらのコマンドを実際に試してみて、快適なWSL2ライフをお送りください!