1個のディストロから複数のWSL2のUbuntuインスタンスを起動する

1個のディストロから複数のWSL2のUbuntuインスタンスを起動する方法です。

「wsl -l -v」で現在の状態を見ます。Ubuntu18.04はMicrosoft Storeからインストールしています。

C:\>wsl -l -v
NAME STATE VERSION
* Ubuntu-18.04 Running 2

 

Ubuntu-18.04のディストロをexportします。 

C:\>wsl --export Ubuntu-18.04 c:\users\xxx\Ubuntu-18.04.tar

wslコマンド、--exportの後にexport対象のディストロ名、その後にフルPathの出力ファイル名をセットして実行。export完了まで少し時間がかかります。

 

次にexportされたディストロをimportします。

C:\>wsl --import Ubuntu-18.04-2 c:\users\xxx\wsl\Ubuntu-18.04-2 c:\users\mdoi\Ubuntu-18.04.tar

 wslコマンド、--importの後に任意のディストロ名、ここでは「Ubuntu-18.04-2」、その後にインストール先のフォルダPath、その後にimportするファイルPathをセットして実行。インストール先フォルダは事前に作成しておきます。

 

インストール先のフォルダに「ext4.vhdx」が作成されました。

f:id:fsms:20201029072638p:plain

 

下記コマンドでインスタンスを起動します。

c:\>wsl -d Ubuntu-18.04-2 -u ユーザー名

 

「wsl -l -v」を実行するとimport時に指定したディストロ名が追加されています。

C:\>wsl -l -v
NAME STATE VERSION
* Ubuntu-18.04 Running 2
Ubuntu-18.04-2 Running 2

 

 

importするディストロ名を変えて複数のインスタンスを同じexportファイルから作成することが出来ます。

C:\>wsl --import Ubuntu-18.04-3 c:\users\xxx\wsl\Ubuntu-18.04-3 c:\users\mdoi\Ubuntu-18.04.tar

 

Ubuntu-18.04-3が追加されました。

C:\>wsl -l -v
NAME STATE VERSION
* Ubuntu-18.04 Running 2
Ubuntu-18.04-3 Stopped 2
Ubuntu-18.04-2 Running 2

 

 

 

【参考サイト】

laboradian.com

 

stackoverflow.com