Today I Learned (2019-11-18)
How to reset WSL on Windows
- Type apps & into the search box in the bottom left of the taskbar.
- Click Apps & features in the search results. The Settings app will open.
- On the Apps & features page in the Settings app, type Ubuntu, or the name of the Linux distribution you want to reset, in the ‘Search this list’ box.
- Ubuntu, or the name of your Linux distribution, will appear. Click it and then click Advanced options.
- In the Settings app, scroll down the list of options until you see Reset. There are two options, Repair and Reset. We want to reset our distribution, so click Reset.
- You will see a warning that resetting the app will permanently delete its data and sign-in preferences. Click Reset again in the pop-out dialog.
- The resetting process will take a few seconds. Once it’s complete, a tick icon will appear to the right of the Reset button.
Changing mount path of WSL from /mnt/c to /c
This works for all of your drives at once. Create /etc/wsl.conf with this content
# Enable extra metadata options by default [automount] enabled = true root = / options = "metadata,umask=22,fmask=11" mountFsTab = false # Enable DNS – even though these are turned on by default, we’ll specify here just to be explicit. [network] generateHosts = true generateResolvConf = true
Move WSL to an external drive
1. Set permissions to the target folder. First, I think you must set some permissions to the folder where the distribution will be moved. You may use
icacls <dir> /grant "<user>:(OI)(CI)(F)" to set the proper permissions.
C:\> whoami test\jaime C:\> icacls D:\wsl /grant "jaime:(OI)(CI)(F)"
NOTE: In addition to the above permissions, I have activated the long path names in Windows.
2. Move the distribution. Using
C:\wsl> lxrunoffline move -n Ubuntu-18.04 -d d:\wsl\installed\Ubuntu-18.04
You may check the installation folder using
C:\wsl> lxrunoffline get-dir -n Ubuntu-18.04 d:\wsl\installed\Ubuntu-18.04
3. Run the distribution. after moving the distribution, you can run the distribution using
wsl or the same
C:\wsl> lxrunoffline run -n Ubuntu-18.04 -w [email protected]:~$ exit logout C:\wsl> wsl [email protected]:/mnt/c/wsl$ exit logout
Use the mirror protocol to automatically select the best mirror
Using mirror protocol as part of your
entry will instruct apt command to fetch mirrors located within your
country only. In order to use mirror protocol update all lines within
/etc/apt/sources.list file from the usual eg.:
deb http://us.archive.ubuntu.com/ubuntu/ ...
deb mirror://mirrors.ubuntu.com/mirrors.txt ...
Repeat the above for all relevant lines where appropriate. Alternatively, use
sed command to automatically edit your
/etc/apt/sources.list file. Update the below
sed command where appropriate to fit your environment:
$ sudo sed -i -e 's/http:\/\/archive/mirror:\/\/mirrors/' -e 's/\/ubuntu\//\/mirrors.txt/' /etc/apt/sources.list