I've just upgraded the Windows 10 in my laptop to Redstone 1. So I had a test of the Linux subsystem (aka. WSL, LXSS or Bash on Windows). Basically, everything is fine, but there is a problem that the RootFS of WSL is located in the %LocalAppData%
path (e.g. C:\Users\xyz\AppData\Local
), which is also the place where my Windows OS located. It consumes a lot of the SSD hard drive space in my laptop and I hope I can move it to my external hard drive.
There is an another problem. Since the other hard drive partitions are mounted as DriveFS, it does not support some Linux filesystem features like chmod
, and some of my Linux project build scripts only works in VoIFS, which only located in /
and /home
.
So I tried to move the whole WSL RootFS to another hard drive. Firstly I've tried to make a NTFS Junction (hard link) for C:\Users\xyz\AppData\Local\lxss
. I've uninstalled the WSL completely and run mklink
for the RootFS to another hard drive, and when I reinstall the WSL again, it couldn't create the new user, and it reports error with code 0x80070003.
Then I searched around, and I got this: moving Linux filesystem - issue #449. It seems that moving and making hard link for WSL RootFS only works before Windows 10 Build 14388, it does not work in the Windows 10 Build 14393 RTM. The only way is moving the whole %LocalAppData%
to the external hard drive, but I cannot do that since I'm a laptop user and I can't bring an external hard drive everywhere!
So I would like to ask that, is there any other ways to move WSL out of my system partition? If I can't do that, can I create an extra VoIFS work directory in some other places and compile my stuff?
Thanks and regards, Jackson