DEV Community

Abhishek
Abhishek

Posted on • Updated on

WSL change LocalState path

  1. List the ditros you have wsl -l -v
  2. Change the directory to a folder with space to export the distro and then use command: wsl --export <Distro-name> <filename.tar>
  3. Unregister the old distro wsl --unregister <Distro-name>
  4. Import again with a different install path. The import command syntax is :
    --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.

            --vhd
                Specifies that the provided file is a .vhdx file, not a tar file.
                This operation makes a copy of the .vhdx file at the specified install location.
Enter fullscreen mode Exit fullscreen mode

Comand to import:
wsl --import <Distro-name> <InstallLocation> <filename.tar>

Additional
Sample .wslconfig to be placed in User home

# Settings apply across all Linux distros running on WSL 2
[wsl2]
# Limits VM memory to use no more than 4 GB, this can be set as whole numbers using GB or MB
# memory=4GB
# Sets the VM to use two virtual processors
# processors=2
# Specify a custom Linux kernel to use with your installed distros. The default kernel used can be found at https://github.com/microsoft/WSL2-Linux-Kernel
# kernel=C:\\temp\\myCustomKernel
# Sets additional kernel parameters, in this case enabling older Linux base images such as Centos 6
# kernelCommandLine = vsyscall=emulate
# Sets amount of swap storage space to 8GB, default is 25% of available RAM
swap=8GB
# Sets swapfile path location, default is %USERPROFILE%\AppData\Local\Temp\swap.vhdx
swapfile=D:\\WSL\\wsl-swap.vhdx
# Disable page reporting so WSL retains all allocated memory claimed from Windows and releases none back when free
# pageReporting=false
# Turn off default connection to bind WSL 2 localhost to Windows localhost
# localhostforwarding=true
# Disables nested virtualization
# nestedVirtualization=false
# Turns on output console showing contents of dmesg when opening a WSL 2 distro for debugging
debugConsole=false
kernelCommandLine = "sysctl.vm.swappiness=100"
Enter fullscreen mode Exit fullscreen mode

Top comments (0)