WSL の基本的なコマンド

下の WSL コマンドは、PowerShell または Windows コマンド プロンプトによってサポートされる形式で示されています。 Bash または Linux ディストリビューションのコマンド ラインからこれらのコマンドを実行する場合は、wslwsl.exe に置き換える必要があります。 コマンドの全一覧を表示するには、wsl --help を実行します。 WSL の更新プログラムが利用可能になったらすぐに受け取るため、まだ行っていない場合は、Microsoft Store からインストールされる WSL のバージョンに更新することをお勧めします。 (Microsoft Store からの WSL のインストールの詳細を確認してください)。

インストール

wsl --install

WSL と Linux の既定の Ubuntu ディストリビューションをインストールします。 詳細については、こちらを参照してください。 このコマンドを使用して、wsl --install <Distribution Name> を実行して追加の Linux ディストリビューションをインストールすることもできます。 ディストリビューション名の有効な一覧については、wsl --list --online を実行します。

次のオプションがあります。

  • --distribution: インストールする Linux ディストリビューションを指定します。 wsl --list --online を実行すると、使用可能なディストリビューションを見つけることができます。
  • --no-launch: Linux ディストリビューションをインストールしますが、自動的には起動しません。
  • --web-download: Microsoft Store を使用するのではなく、オンライン ソースからインストールします。

WSL がインストールされていない場合は、次のオプションがあります。

  • --inbox: Microsoft Store を使用する代わりに、Windows コンポーネントを使用して WSL をインストールします。 "(WSL 更新プログラムは、ストア経由で利用可能としてプッシュされるのではなく、Windows 更新プログラムを介して受信されます)。"
  • --enable-wsl1: WSL 用の Microsoft Store バージョンのインストール中に、"Linux 用 Windows サブシステム" オプション コンポーネントも有効にすることで、WSL 1 を有効にします。
  • --no-distribution: WSL のインストール時にディストリビューションをインストールしません。

Note

Windows 10 またはそれ以前のバージョンで WSL を実行している場合は、-d フラグを --install コマンドに含めて、ディストリビューション wsl --install -d <distribution name> を指定する必要がある場合があります。

使用可能な Linux ディストリビューションを一覧表示する

wsl --list --online

オンライン ストアから利用できる Linux ディストリビューションの一覧を確認します。 このコマンドは、「wsl -l -o」と入力することもできます。

インストールされている Linux ディストリビューションを一覧表示する

wsl --list --verbose

Windows コンピューターにインストールされている Linux ディストリビューションの一覧を確認します。これには、状態 (ディストリビューションは実行中か停止中か) と、ディストリビューションを実行している WSL のバージョン (WSL 1 または WSL 2) が含まれます。 WSL 1 と WSL 2 の比較。 このコマンドは、「wsl -l -v」と入力することもできます。 list コマンドで使用できるその他のオプションには、次のようなものがあります。--all: すべてのディストリビューションを一覧表示します。--running: 現在実行中のディストリビューションのみを一覧表示します。--quiet: ディストリビューション名のみを表示します。

WSL バージョンを 1 または 2 に設定する

wsl --set-version <distribution name> <versionNumber>

ある Linux ディストリビューションを実行する WSL のバージョン (1 または 2) を指定するには、<distribution name> をそのディストリビューションの名前に置き換え、<versionNumber> を 1 または 2 に置き換えてください。 WSL 1 と WSL 2 の比較。 WSL 2 は、Windows 11または Windows 10 (バージョン 1903、ビルド 18362 以降) でのみ使用できます。

警告

WSL 1 と WSL 2 の切り替えは時間がかかり、2 つのアーキテクチャの違いにより失敗する可能性があります。 大きなプロジェクトを含むディストリビューションの場合は、変換を試みる前にファイルをバックアップすることをお勧めします。

既定の WSL バージョンを設定する

wsl --set-default-version <Version>

WSL 1 または WSL 2 の既定のバージョンを設定するには、<Version> を数値 1 または 2 に置き換えます。 たとえば、wsl --set-default-version 2 のようにします。 この数値は、新しい Linux ディストリビューションをインストールするときに既定値となる WSL のバージョンを表します。 WSL 1 と WSL 2 の比較。 WSL 2 は、Windows 11または Windows 10 (バージョン 1903、ビルド 18362 以降) でのみ使用できます。

既定の Linux ディストリビューションを設定する

wsl --set-default <Distribution Name>

WSL コマンドの実行に使用される既定の Linux ディストリビューションを設定するには、<Distribution Name> を優先する Linux ディストリビューションの名前に置き換えてください。

ディレクトリをホームに変更する

wsl ~

~ を wsl と一緒に使用して、ユーザーのホーム ディレクトリから開始できます。 WSL コマンド プロンプト内で任意のディレクトリからホームに戻る場合は、cd ~ コマンドを使用できます。

PowerShell または CMD から特定の Linux ディストリビューションを実行する

wsl --distribution <Distribution Name> --user <User Name>

特定のユーザーで特定の Linux ディストリビューションを実行するには、<Distribution Name> を優先する Linux ディストリビューションの名前 (例: Debian) に置き換え、<User Name> を既存のユーザーの名前 (例: root) に置き換えてください。 WSL ディストリビューションにそのユーザーが存在しない場合は、エラーが発生します。 現在のユーザー名を出力するには、whoami コマンドを使用します。

WSL を更新する

wsl --update

WSL バージョンを最新バージョンに更新します。 次のオプションがあります。

  • --web-download: Microsoft Store ではなく、GitHub から最新の更新プログラムをダウンロードします。

WSL の状態を確認する

wsl --status

既定のディストリビューションの種類、既定のディストリビューション、カーネル バージョンなど、WSL 構成に関する一般的な情報を確認します。

WSL のバージョンを確認する

wsl --version

WSL とそのコンポーネントに関するバージョン情報を確認します。

ヘルプ コマンド

wsl --help

WSL で使用できるオプションとコマンドの一覧を確認します。

特定のユーザーとしての実行

wsl --user <Username>

特定のユーザーとして WSL を実行するには、<Username> を、WSL ディストリビューションに存在するユーザーの名前に置き換えます。

ディストリビューションの既定のユーザーを変更する

<DistributionName> config --default-user <Username>

ディストリビューションのログインに対する既定のユーザーを変更します。 既定のユーザーになるには、ユーザーが既にディストリビューション内に存在している必要があります。

たとえば、「ubuntu config --default-user johndoe」と入力すると、Ubuntu ディストリビューションの既定のユーザーが、"johndoe" ユーザーに変更されます。

注意

ディストリビューションの名前がわからない場合は、wsl -l コマンドを使用してください。

警告

これらのディストリビューションには実行可能ランチャーがないため、インポートされたディストリビューションではこのコマンドは機能しません。 代わりに、/etc/wsl.conf を使用して、インポートされたディストリビューションの既定のユーザーを変更できます。 詳細設定の構成に関するドキュメントの「自動マウント オプション」を参照してください。

シャットダウン

wsl --shutdown

実行中のすべてのディストリビューションと WSL 2 の軽量ユーティリティ仮想マシンを直ちに終了します。 このコマンドは、メモリの使用制限を変更する場合や .wslconfig ファイルを変更する場合など、WSL 2 仮想マシン環境の再起動が求められる場合に必要となることがあります。

Terminate

wsl --terminate <Distribution Name>

指定したディストリビューションを終了するか、実行を停止するには、<Distribution Name> を対象のディストリビューションの名前に置き換えます。

IP アドレスを特定する

  • wsl hostname -i。WSL 2 経由でインストールされた Linux ディストリビューションの IP アドレスの場合 (WSL 2 VM アドレス)
  • cat /etc/resolv.conf。WSL 2 から見た Windows マシンの IP アドレスの場合 (WSL 2 VM)

ディストリビューションをエクスポートする

wsl --export <Distribution Name> <FileName>

新しいディストリビューション ファイルとして指定したディストリビューションのスナップショットをエクスポートします。 既定値は tar 形式です。 標準入力の場合、ファイル名は - でもかまいません。 次のオプションがあります。

  • --vhd: ディストリビューションのエクスポートを、tar ファイルではなく .vhdx ファイルで行うように指定します (これは WSL 2 の使用時にのみサポートされます)

ディストリビューションをインポートする

wsl --import <Distribution Name> <InstallLocation> <FileName>

指定した tar ファイルを新しいディストリビューションとしてインポートします。 標準入力の場合、ファイル名は - でもかまいません。 次のオプションがあります。

  • --vhd: ディストリビューションのインポートを、tar ファイルではなく .vhdx ファイルで行うように指定します (これは WSL 2 の使用時にのみサポートされます)
  • --version <1/2>: ディストリビューションを WSL 1 と WSL 2 ディストリビューションのどちらとしてインポートするかを指定します

ディストリビューションをインプレースでインポートする

wsl --import-in-place <Distribution Name> <FileName>

指定した .vhdx ファイルを新しいディストリビューションとしてインポートします。 仮想ハード ディスクは、ext4 ファイルシステムの種類でフォーマットする必要があります。

Linux ディストリビューションの登録解除またはアンインストール

Linux ディストリビューションは Microsoft Store を介してインストールできますが、ストアを介してアンインストールすることはできません。

WSL ディストリビューションの登録を解除してアンインストールするには:

wsl --unregister <DistributionName>

<DistributionName> を対象の Linux ディストリビューションの名前に置き換えると、WSL からそのディストリビューションの登録が解除され、再インストールまたはクリーンアップできます。 注意: 登録が解除されると、そのディストリビューションに関連付けられているすべてのデータ、設定、およびソフトウェアが完全に失われます。 ストアから再インストールすると、ディストリビューションのクリーン コピーがインストールされます。 たとえば、wsl --unregister Ubuntu の場合、WSL で使用可能なディストリビューションから Ubuntu が削除されます。 wsl --list を実行すると、一覧に表示されなくなっていることがわかります。

また、他のストア アプリケーションと同様に、Windowsコンピューターで Linux ディストリビューション アプリをアンインストールすることもできます。 再インストールするには、Microsoft Store でディストリビューションを見つけて、[起動] を選びます。

ディスクまたはデバイスをマウントする

wsl --mount <DiskPath>

<DiskPath> をディスクが配置されているディレクトリまたはファイル パスに置き換え、すべての WSL2 ディストリビューションに物理ディスクを接続してマウントします。 WSL 2 での Linux ディスクのマウントに関する記事を参照してください。 次のオプションがあります。

  • --vhd: <Disk> は仮想ハード ディスクを参照することを指定します。
  • --name: マウントポイントのカスタム名を使用してディスクをマウントします
  • --bare: WSL2 にディスクを接続しますが、マウントはしません。
  • --type <Filesystem>: ディスクのマウント時に使用するファイル システムの種類。指定しない場合、既定値は ext4 になります。 このコマンドは、「wsl --mount -t <Filesystem>」と入力することもできます。ファイル システムの種類は blkid <BlockDevice> コマンドを使用して検出できます (例: blkid <dev/sdb1>)。
  • --partition <Partition Number>: マウントするパーティションのインデックス番号。指定しない場合、既定値はディスク全体になります。
  • --options <MountOptions>: ディスクをマウントする際に、ファイル システム固有のオプションをいくつか含めることができます。 たとえば、wsl --mount -o "data-ordered"wsl --mount -o "data=writeback などの ext4 マウント オプションです。 ただし、現時点では、ファイル システム固有のオプションだけがサポートされています。 rorwnoatime などの汎用オプションはサポートされていません。

注意

wsl.exe (64 ビット ツール) にアクセスするために 32 ビット プロセスを実行している場合は、次の方法でコマンドを実行することが必要になる場合があります: C:\Windows\Sysnative\wsl.exe --command

ディスクのマウント解除

wsl --unmount <DiskPath>

ディスク パスで指定されたディスクのマウントを解除します。ディスク パスが指定されていない場合、このコマンドはマウントされているすべてのディスクのマウントを解除してデタッチします。

非推奨の WSL コマンド

wslconfig.exe [Argument] [Options]
bash [Options]
lxrun /[Argument]

これらのコマンドは、WSL でインストールされた Linux ディストリビューションを構成するための元々の wsl 構文でしたが、wsl または wsl.exe コマンド構文に置き換えられました。