このページの本文へ

Windows Info 第301回

WSL2で用いるルートファイルシステムの容量を拡大する方法は?

2021年11月14日 10時00分更新

文● 塩田紳二 編集● ASCII

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

 WSL2(Windows Subsystem for Linux 2)では、仮想マシンを使ってLinux環境を実現している。そのネイティブファイルシステムは、仮想ハードディスクファイル上にある。「ext4.vhdx」と呼ばれるこのファイルは、容量可変形式で作られ、最大容量は256GBに指定されている。この値は固定値なので、場合によっては足りなくなることがある。今回はこの容量を拡大する方法を解説しよう

WSL2ではディストリビューションのインストール時に容量可変の仮想ハードディスクファイルにext4ファイルシステムを作る。このときの容量は256GB固定だ

仮想ハードディスクファイルの最大容量を拡大する

 仮想ハードディスクファイルには一般に「容量可変」と「容量固定」の2タイプがあるが、通常は利用した分だけ記憶容量を消費する、容量可変を用いるケースが多い。容量可変の仮想ハードディスクファイルでは最大容量が指定してあり、ソフトウェア側からはその容量を持つドライブであるように見える。

 容量可変の仮想ハードディスクファイルはDISKPARTコマンドを使うことで最大容量を増やすことが可能だ。ただし、対象がext4形式の場合は、DISKPARTコマンドの機能には制限がある。

 たとえば、最大容量を小さくすることはNTFS形式のみ可能で、ext4形式でフォーマットされた仮想ハードディスクファイルには対応していない。もっとも最大容量は名目上の容量であり、これを大きくしたからといって、ただちにファイルサイズが拡大するわけではない。その意味では気軽に拡大してしまいがちだが、小さくはできないとなると注意が必要だ。

 どうしても小さくしたい場合には、wsl.exeでディストリビューションをファイルにエクスポート(--exportオプションを使う)して、新規に作成した同一ディストリビューションにインポート(--importオプション)するしかなさそうだ。また、最大容量を変更したあと、WSLディストリビューション側で容量を再認識させる必要がある。

WSLディストリビューションのext4.vhdxを探す

 最初に処理対象となるWSLディストリビューションのext4.vhdxファイルを探す必要がある。DISKPARTコマンドで仮想ハードディスクファイルをあつかうには、そのフルパスが必要になるからだ。

 ext4.vhdxは、ユーザーフォルダー以下の「Appdata\packages」にあるWSLディストリビューションのパッケージフォルダーのLocalStateフォルダーに含まれている。インストールしているWSLディストリビューションが1つしかなければ、探すのはそれほど難しくない。しかし、複数のWSLディストリビューションがある場合には、以下の方法を使う。なお、コマンドの機能などからWindows PowerShellを用いる。また、DISKPARTコマンドには管理者権限が必要となる。

 まずは処理するWSLディストリビューションが停止していることを確認する。開いているコンソールがあれば、exitで抜け、念のため「wsl.exe --shutdown」を実行しておく。次に以下のコマンドを使って、ディストリビューションのパッケージ名を探す。また、表は入手可能な主なWSLディストリビューションの名称とパッケージ名である。

Get-AppxPackage "*WSLディストリビューション名の一部*" | select packagefullname

 Get-AppxPackageの引数は、たとえばUbuntu-18.04を見つけたい場合には、「Get-AppxPackage "*Ubuntu*"」などと指定する。パッケージ名がわかったら、次はユーザーフォルダーのAppData\local\packageの下でパッケージ名を探す。PowerShellなら、

Get-ChildItem $env:LOCALAPPDATA\packages\

と入力して、パッケージ名先頭の文字(たとえば、Ubuntu系ならCanonicalなど)を続けて入力してタブキーで補完してパッケージのパスを作り、さらに「\localstate\ext4.vhdx」を続けてフルパスを得る。これをクリップボードにコピーしておく。

続いて実際にDISKPARTを起動する

 DISKPARTコマンドを起動する。

仮想ハードディスクファイル(.vhdx)の最大容量を大きくするには、DISKPARTコマンドを使う。パスが長く補完機能も使えないため事前に仮想ハードディスクファイルのフルパスをクリップボードにコピーしておく必要がある

 もし、起動したコンソールが管理者権限でなければ、別ウィンドウが開く。DISKPARTコマンドのプロンプトでVDISK(仮想ディスク)を選択するために以下のサブコマンドを入れる。

select vdisk file="ext4.vhdxのフルパス"

 その後、確認のために「detail vdisk」コマンドで情報を表示させる。デフォルトのままであれば、「仮想サイズ」に256GBと表示されているはずである。

 では、最大サイズを300GBに拡大する。それには、

expand vdisk maximum=307200

とする。

DISKPARTのEXPANDコマンドで仮想ハードディスク(VDISK)の最大容量を拡大できる

 307200は、300×1024である。maximumではMB単位でサイズを指定するため、GBにするには1024を掛ける必要がある。コマンドが終了したらexitコマンドでDISKPARTを終了させる。

 次に仮想ハードディスクファイルの最大容量を変更したWSLディストリビューションを起動する。対象ディストリビューションを間違えないように注意する。起動はwsl.exeからで、以下のようにきちんとディストリビューション名をつけたほうがよい。

wsl.exe -d Ubuntu-18.04

 起動したら、先に現在のファイルシステムのサイズを確認しておく。それには、dfコマンドを使う。

事前にdfコマンドやlsblkコマンドでルートファイルシステムに対応するデバイス名と容量を確認しておく

df -h

 ここで、ルートファイルシステムを確認しておく。dfコマンドの出力で「Mounted on」が「/」になっているデバイスがルートファイルシステムである。前記の例では「/dev/sdc」だった。ただし、実行環境により、他のデバイス名になることがある。デバイス名が判定できたら、以下のコマンドを使う。

sudo resize2fs /dev/sdc 300G

 このコマンドは、パーティション内のファイルシステムのサイズを変更するもの。これで/dev/sdcの容量が大きくなったはずだ。最後にexitコマンドでWSLを抜け、一回シャットダウンしておく。

1つ前の画面と比較すると、/dev/sdcの容量が増えている。dfは容量値の計算方法が違うため、resize2fsやDISKPARTの表示とは一致しない。lsblkコマンドでは300GBとなっている

 仮想ハードディスクの最大容量の変更は、NTFSならマウントしてGUI(「コンピュータの管理」→「ディスクの管理」)からでも可能なのだが、Windowsのツールはext4に対応していないため、ファイルシステムの変更(前記のresize2fsに相当する機能)をすることができない。

 一方でDISKPARTコマンドは、今の感覚からすれば相当古いものであり、パスの補完機能がないため、事前にフルパスを調べておく必要がある。しかしWSLディストリビューションは、Microsoftストアのパッケージとして配布されているため、その位置を探すのが面倒。できればPowerShellに管理ツールぐらい用意してほしいところだ。

カテゴリートップへ

この連載の記事
1
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
¥26,880
2
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥36,979
3
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
¥134,377
4
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
¥39,800
5
Apple 2025 MacBook Pro 10 コアCPU、10 コアGPU のM5 チップ搭載ノートパソコン:Apple Intelligence のために設計、14.2 インチLiquid Retina XDR ディスプレイ、24GB ユニファイドメモリ、1TBのSSD ストレージ - スペースブラック
Apple 2025 MacBook Pro 10 コアCPU、10 コアGPU のM5 チップ搭載ノートパソコン:Apple Intelligence のために設計、14.2 インチLiquid Retina XDR ディスプレイ、24GB ユニファイドメモリ、1TBのSSD ストレージ - スペースブラック
¥296,323

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥1,880
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
3
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
¥980
4
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,280
7
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥699
8
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥5,545
9
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
¥1,980
10
バッファロー USBメモリ 32GB USB3.2(Gen1)/3.1(Gen 1)/3.0/2.0 充実サポート RUF3-K32GA-BK/N
バッファロー USBメモリ 32GB USB3.2(Gen1)/3.1(Gen 1)/3.0/2.0 充実サポート RUF3-K32GA-BK/N
¥880

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

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