2026年8月14日
今回は、万が一WSL環境が壊れた時に備えて、バックアップ(とリストア)をやってみたいと思います。
1. 環境のバックアップ
PowerShell上で実行します。
WSLはシャットダウンしておきましょう。
PS C:\windows\System32> wsl --shutdown
インストールされているディストリビューションの名前を確認します。
PS C:\windows\System32> wsl -l -v
NAME STATE VERSION
* AlmaLinux-9 Stopped 2
Ubuntu Stopped 2
今回はUbuntuをバックアップします。
「wsl –export」の後に、上記で確認したディストリビューション名(NAME列)と、バックアップのファイル名を指定します。
PS C:\tmp> wsl --export Ubuntu ubuntu.tar
エクスポートが進行中です。これには数分かかる場合があります。 (1506 MB)
この操作を正しく終了しました。
PS C:\tmp>
Ubuntuがディストリビューション名、ubuntu.tarがバックアップのファイル名です。

約1.5GBくらいの容量を要しますね。
2. 環境のリストア
次はリストアしてみます。
まず、バックアップ後の変更点が分かるように、適当なテキストファイルを作成します。
minyaneko@Ubuntu:~$ vi test.txt
minyaneko@Ubuntu:~$ ls
test.txt
そしてWSLをシャットダウンします。
PS C:\tmp> wsl --shutdown
先ほどバックアップしたファイルをリストアしてみます。
PS C:\tmp> wsl --import Ubuntu C:\tmp\WSL C:\tmp\ubuntu.tar
指定された名前のディストリビューションは既に存在します。--name を使用して別の名前を選択してください。
エラー コード: Wsl/Service/RegisterDistro/ERROR_ALREADY_EXISTS
あれ?インポートできない・・・。
どうやら、同じディストリビューション名でインポートしようとすると、名前が重複するのでできないようです。
同じ名前のディストリビューションにする場合、一度、既存のディストリビューションを登録解除しないといけません。ただ、これは既存のディストリビューションが消えてしまうので注意。
PS C:\tmp> wsl --unregister Ubuntu
登録解除。
この操作を正しく終了しました。
再度インポートします。
PS C:\tmp> wsl --import Ubuntu C:\tmp\WSL C:\tmp\ubuntu.tar
この操作を正しく終了しました。
ところで、この時tarファイルと同じところにvhdx形式のファイルができます。
tarファイルがアーカイブファイルなのに対し、vhdx形式のファイルは仮想ファイルディスクのようなものになります。

vhdx形式ファイルの方がtarファイルより若干容量が多いです。
vhdx形式のファイルは、インポートする前はC:\Users\[ユーザ名]\AppData\Local\Packagesの下にあるそうですが、wsl –unregisterで登録解除した時点でそれが削除され、tarファイルをimportした時点でtarファイルと同じ場所に作成されるようです。
再度Ubunuを起動します。
PS C:\tmp> wsl -d Ubuntu
minyaneko@Ubuntu:/mnt/c/tmp$
あれ、ディレクトリがvhdxのディレクトリに変わってる・・・。
それはともかく、先ほど作成したファイルがあるかどうか確認します。
minyaneko@Ubuntu:/mnt/c/tmp$ cd
minyaneko@Ubuntu:~$ ls
minyaneko@Ubuntu:~$
ファイルが無いので、バックアップしたtarファイルがリストアできたようです。