Is it possible to install WSL with no internet connection?
Solution 1:
Installing a Linux Distribution without internet connection
You can (1) download the installer from the Windows Store or (2) download a distribution file and install it using tools such as lxRunOffline. If you have the distribution file you can make the installation copying the files using a USB drive or something else.
Downloading the installer from the Windows Store
You can download the installers from the Windows Store using Powershell. For instance, you can download the Ubuntu 16 version using the following command
PS> Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing
In the above command, the output file is Ubuntu.appx
. It must be named in that way. You can run that application to install the Ubuntu.
PS> Ubuntu.appx
Using LxRunOffline
First, you must download some distribution file. There are many distribution files available in the lxRunOffline wiki.
For instance, to install the same Ubuntu 16 from the Microsoft Windows Store, you can download the file at
https://lxrunoffline.apphb.com/download/UbuntuFromMS/16
Then, you can install the linux distribution using lxRunOffline
# lxrunoffline install -n <name> -d <folder> -f <distribution file>
C:\wsl> lxrunoffline install -n copy -d c:\wsl\copy -f 16.04.2-server-cloudimg-amd64-root.tar.gz
To run the distribution, you may use the same lxRunOffline
C:\wsl> lxrunoffline run -n copy -w
Using a DistroLauncher
You can use some DistroLauncher. There are many versions based on the Microsoft example to create custom linux distributions for WSL. For instance, you can use the Yuk7 version.
You must download a distribution file and the launcher.exe
. You must rename the distribution file to rootfs.tar.gz
and the launcher to the distribution name you want. Later you must run the launcher as an Administrator (I got errors running it as a normal user)
PS> ren launcher.exe mydistro.exe
PS> ren .\16.04.2-server-cloudimg-amd64-root.tar.gz rootfs.tar.gz
PS> .\mydistro
The first time you run the launcher, it installs and run the distribution. The next time, it runs the linux distribution.
After installing, you can manage the distributions using the wslconfig
or the lxrunoffline
commands.