WSL Ubuntu PC環境移行方法
2024年3月、WSL Ubuntu PC環境をWindows10からWindows11に移行しました。
Windows10のWSL1 Ubuntu18.04環境で執筆支援システム Re:VIEWを使用してKindle本を執筆しています。
Windows10は2025年10月にサポートが終了してしまいますので、Windows11への環境移行が必要です。
しかし、Windows11で新しくRe:VIEW環境を構築すると各種ツールのバージョンが異なって、現状と同じEPUBを生成できるとは限りません。
例えば、執筆支援システムはRe:VIEW 3.2.0を使用していますが、2024年の今はRe:VIEW 5.8.0になっています。
私は、独自にRe:VIEW構文をモンキーパッチで拡張していますので、Re:VIWバージョンを上げると正しく動作する保証はありません。
そこで、Windows10のWSL1 Ubuntu18.04環境をそのままでWindows11に環境移行したいと考えました。
少し調べてみると、Windows10でWSLの–exportオプションで環境を出力して、Windows11でWSLの–importオプションで環境を取り込めば良いようです。
PC環境移行方法
STEP-1 移行元WSL環境のエクスポート
WSL環境状態の確認
移行元のWindows10 PCのWSL環境状態をWSLコマンドのオプション(-l -v)で確認します。
W:\> wsl -l -v
NAME STATE VERSION
* Debian Stopped 1
Ubuntu-18.04 Running 1
W:\>
WSLのUbuntu-18.04が「Stopped状態」なら、エクスポートに進みます。
WSLのUbuntu-18.04が「Running状態」です。
WSLコマンドのオプション(–shutdown)でWSLを停止させます。
W:\> wsl --shutdown
W:\>
再度、WSL環境状態をWSLコマンドのオプション(-l -v)で確認します。
W:\> wsl -l -v
NAME STATE VERSION
* Debian Stopped 1
Ubuntu-18.04 Stopped 1
W:\>
WSLのUbuntu-18.04が「Stopped状態」になりました。
WSL環境のエクスポート
WSLのUbuntu-18.04が停止したので、WSLコマンドのオプション(–export)でWSL環境をエクスポートします。
WSL --export ディストリビューション名 ファイル名
- ディストリビューション名は、「wsl -l -v」で表示しているNAMEを指定します。<
- ファイル名は、環境を保存するファイル名を指定します
W:\> wsl --export Ubuntu-18.04 e:\wsl_data\Ubuntu-18.04.tar
W:\>
STEP-2 移行先WSL環境の削除
WSL環境状態の確認
移行先のWindows11 PCのWSL環境状態をWSLコマンドのオプション(-l -v)で確認します。
C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
Ubuntu-22.04 Stopped 2
Ubuntu-18.04 Running 2
C:\>
WSLのUbuntu-18.04が「Stopped状態」なら、登録解除に進みます。
WSLのUbuntu-18.04が「Running状態」です。
WSLコマンドのオプション(–shutdown)でWSLを停止させます。
C:\> wsl --shutdown
C:\>
再度、WSL環境状態をWSLコマンドのオプション(-l -v)で確認します。
C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
Ubuntu-22.04 Stopped 2
Ubuntu-18.04 Stopped 2
C:\>
WSLのUbuntu-18.04が「Stopped状態」になりました。
WSL環境の登録解除
WSLが停止したので、WSLコマンドのオプション(–unregister)でWSL環境を登録解除します。
C:\> wsl --unregister Ubuntu-18.04
登録解除。
この操作を正しく終了しました。
C:\>
WSL環境状態をWSLコマンドのオプション(-l -v)で確認します。
C:\> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
Ubuntu-22.04 Stopped 2
C:\>
WSLのUbuntu-18.04環境を登録解除したことを確認しました。
STEP-3 移行先WSL環境のインポート
WSLのUbuntu-18.04環境を登録解除したので、WSLコマンドのオプション(–import)でWSL環境をインポートします。
WSL --import ディストリビューション名 格納先 ファイル名
- ディストリビューション名は、「wsl -l -v」で表示しているNAMEを指定します。
- 格納先は、新しいWSL環境を格納するディレクトリ名を指定します。
- ファイル名は、環境を保存したファイル名を指定します。
C:\> wsl --import Ubuntu-18.04 c:\wsl_env e:\wsl_data\Ubuntu-18.04.tar --version 2
インポート中です。この処理には数分かかることがあります。
この操作を正しく終了しました。
C:\>
後に付けたオプション(–version 2)は、WSL2としてインポートする指定です。
STEP-4 デフォルトユーザーの登録
WSL環境の移行が完了したので、Windows11でWSLのUbuntu-18.04を起動してみます。
# pwd
/root
#
root権限でUbuntuが起動しました。このまま使用するのはとても危険です。移行前のUbuntuでは、ユーザーpiを使用していました。
/etc/wsl.confファイルにデフォルトのユーザーを登録します。
# vi /etc/wsl.conf
(デフォルトユーザーの登録)
# cat /etc/wsl.conf
[user]
default=pi
#
WSLのUbuntuを終了して、再度起動します。
$ pwd
/home/pi
$
移行前のUbuntu環境と同じようにユーザーpiで起動しました。
Re:VIEW原稿フォルダ
Re:VIEWはLinuxで動作しますが、原稿のテキストファイル作成やEPUB表示はWindowsで行うことにします。
WSL2はLinuxからWindowsのディレクトリにアクセスできますので、原稿を入れるフォルダをWindows側に作成します。
Windowsディレクトリ(C:\MyHome\Ubuntu_18.04)をLinux(MyHome)でアクセスできるようにシンボリックリンクを作成します。
$ ln -s /mnt/c/MyHome/Ubuntu_18.04 MyHome
$ cd MyHome
$ mkdir review3
$
「~/MyHome/review3」が原稿用のディレクトリです。
Ubuntu-18.04のショートカット
WSL2 Ubuntu-18.04起動のショートカットがあれば便利です。
コマンド「C:\Windows\System32\wsl.exe -d Ubuntu-18.04 -u pi」のショートカットを「wsl_Ubuntu-18.04」とします。
次に、ショートカットのプロパティから作業用フォルダを「\\wsl$\Ubuntu-18.04\home\pi」に変更します。
まとめ
WSL Ubuntu PC環境をWindows10からWindows11に移行することができました。
2025年10月にWindows10がサポート終了となってしまうので、執筆支援システム Re:VIEWの移行が課題でしたが、思ったより簡単に移行できました。
WSL2を標準でインストールすると「C:\Users\%USER%\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState」という深いフォルダにext4.vhdxをセットアップします。
–exportと–importオプションを使用するとWSL Ubuntu環境を任意のフォルダにセットアップできます。
C:ドライブの容量が少ない場合は、D:ドライブでもセットアップできます。