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
Source: https://github.com/microsoft/WSL/issues/1918
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 lxrunoffline move
.
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 lxrunoffline
C:\wsl> lxrunoffline run -n Ubuntu-18.04 -w
user@test:~$ exit
logout
C:\wsl> wsl
user@test:/mnt/c/wsl$ exit
logout
Use the mirror protocol to automatically select the best mirror
Using mirror protocol as part of your /etc/apt/sources.list
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/ ...
to:
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