このページの本文へ

前へ 1 2 次へ

Windows Info 第178回

プレビューが開始されたWindows Subsystem for Linux 2を動かす

2019年06月23日 10時00分更新

文● 塩田紳二 編集● ASCII編集部

  • この記事をはてなブックマークに追加
  • 本文印刷

WSL1と2を区別する方法

 複数のディストリビューションでWSL1とWSL2を同時に使っているときなど、両者を区別したくなることがある。後述するようにWin32側では、wsl.exeコマンドでディストリビューションとWSLのバージョンを表示させることができるが、WSL内で区別できないと、たとえば、コンソールウィンドウのタイトルバーなどに表示ができない。

 調べたところ、WSL2では「WSL_INTEROP」という環境変数が定義されているが、WSL1には定義されていないことがわかった。なので、この環境変数の定義を有無を調べることで、WSL1かWSL2を判別できる。とりあえず、.bashrcでコンソールウィンドウタイトルに表示するようにしてみた。

プレビュー版では、WSL1とWSL2は、WSL_INTEROP環境変数の有無で判定できたため、.bashrcを書き換えて、タイトルバーに表示させてみた

 .bashrcの「case "$TERM" in」の前にWSL_VERにWSL1かWSL2を代入し、「case "$TERM" in」に続くPS1(プロンプトの設定)にWSL_VERを追加している。

ファイルシステムのext4と仮想HDDのVHDX

 WSL2のLinuxでは、ファイルシステムにext4を使うが、これは、win32側では、VHDX(仮想HDDファイル)として実現されている。これは、Hyper-Vの機能の1つで、仮想環境側ではストレージデバイスのようにみえるが、ホストパーティション側ではNTFSのファイルになっている。

 なお、調べたところ、ext4に対応するVHDXファイルは、「%LOCALAPPDATA%\Packages\<PackageFamilyName>\LocalState\<disk>.vhdx」にある。たとえば、Ubuntu-18.04では、ユーザーフォルダの下の

%LOCALAPPDATA%\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\ext4.vhdx

になる。

 Ubuntu-18.04の場合、パッケージ名は「CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc」とハイフンが入らないという点に注意する必要がある。調べたところ、このプレビュー版では、ファイルサイズとしては1GB弱だが、最大256GBの容量を持つVHDXファイルだった。

DISKPARTコマンドでext4を実現しているVHDXファイルを調べたところ、実サイズは約1GBだが、最大256GBまで対応していたことがわかった

 なお、これが万一不足した場合には、DiskpartのExpandサブコマンドで拡大することができる。

wsl.exeコマンドも改良されている

 WSL2の実装に伴い、wsl.exeコマンドも改良され、オプションが追加されている。主な改良点は、WSL1とWSL2の切り替えに関するものだが、WSLの実行をすべて停止する--shutdownオプションや、--Listオプションの拡張などもある。

 まず、既存のWSL1ディストリビューションをWSL2に切り替えるには、--set-versionオプションを使い、

wsl.exe --set-version <ディストリビューション名> <バージョン番号>

とする。<ディストリビューション名>は、wsl.exe --listで表示でき、<バージョン番号>には「1」または「2」を指定する。なお、変換を行う際にはWSLを終了させるような場合には、「wsl.exe --shutdown」コマンドが利用できる。

 また、新規にインストールするWSLディストリビューションをWSL2用とする場合には、以下のコマンドで、デフォルトのWSLバージョンを指定しておく。

wsl.exe --set-default-version <バージョン番号>

 wsl.exe --listコマンドでは、-vオプションを付けると、それぞれのディストリビューションのWSLバージョンを表示できる。

wsl.exeコマンドが拡張されていて、--listオプションに-vオプションを付けると、ディストリビューションのバージョンを表示できる

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン