In our last article we talked about Moving an install WSL Distro from it awful install folder to another drive and path. So let’s make a back up of that distro, and then install it on a different PC.
Using our new favorite tool LxRunOffline let’s make back up of a distro on our PC.
However, as one starts down the path of using LxRunOffline, there is a slight issue when it comes to WSL2 Distros:
lxrunoffline export -n openSUSE-Leap-15-1 -f suse.tar.gz
[ERROR] The action/argument “export” doesn’t support WSL2.
Ok, not a huge problem… this article just got longer…. LxRunOffline export will work for WSL 1 type Distros… So let’s do an example of both using LxRunOffline and WSL utilities.
For WSL 1 type Distros:
LxRunOffline has a command called List- from a Powershell window my list looks like this
LxRunOffline.exe list fedoraremix docker-desktop Debian Ubuntu-18.04 Ubuntu openSUSE-Leap-15-1 docker-desktop-data WLinux Ubuntu-20.04 kali-linux
Now the LX tool has a command to do a backup. This collects the distro into a Linux tar file (in Linux terms a compressed tape file).
LxRunOffline export –n <NameOfDistro> –f <pathAndNameOfExportFile>
That’s the general format of the export.
Now before one goes about exported a Distro – I would really do a WSL –shutdown Why? I think it’s best not to have any Distro’s running when you are trying to export them. It’s not a 100% required, but it is a good practice.
For WSL 2 type Distros:
Still do the WSL –shutdown.
Now we use the WSL command to backup the Distro. Like the LX tool, WSL has basically the same set of commands.
Get a list of Distros with:
wsl --list Windows Subsystem for Linux Distributions: Ubuntu-20.04 (Default) fedoraremix docker-desktop Debian Ubuntu-18.04 Ubuntu openSUSE-Leap-15-1 docker-desktop-data WLinux kali-linux
And the backup command for WSL:
wsl --export WLinux .\PengWin.tar.gz dir Directory: D:\cse.Linux Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10/17/2020 12:46 PM 9039769600 PengWin.tar.gz
Now we have in either case a copy of our Distro that can be imported on another PC with WSL.
When using WSL.exe
WSL --import <Distro> <InstallLocation> <FileName> [Options] Imports the specified tar file as a new distribution. The filename can be - for standard input. Options: --version <Version> Specifies the version to use for the new distribution.
The –import command Allows one to name the Distro, install to a location, from a filename. The options here, –version allows one to change the WSL version while it’s being imported.
Now LXRunOffline is a little different:
lxrunoffline install Options: -n arg Name of the distribution -d arg The directory to install the distribution into. -f arg The tar file containing the root filesystem of the distribution to be installed. If a file of the same name with a .xml extension exists and "-c" isn't specified, that file will be imported as a config file. -r arg The directory in the tar file to extract. This argument is optional. -c arg The config file to use. This argument is optional. -v arg (=2) The version of filesystem to use, latest available one if not specified. -s Create a shortcut for this distribution on Desktop.
As we see the install command has a few more options beyond Name, Directory, and tar filename.
Prev Article: Moving your installed WSL Linux Distro