Move WSL (Bash on Windows) root filesystem to another hard drive?
<p>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 <code>%LocalAppData%</code> path (e.g. <code>C:\Users\xyz\AppData\Local</code>), 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. </p>

<p>There is an another problem. Since the other hard drive partitions are mounted as DriveFS, it does not support some Linux filesystem features like <code>chmod</code>, and some of my Linux project build scripts only works in VoIFS, which only located in <code>/</code> and <code>/home</code>.</p>

<p>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 <code>C:\Users\xyz\AppData\Local\lxss</code>. I've uninstalled the WSL completely and run <code>mklink</code> for the RootFS to another hard drive, and when I reinstall the WSL again, <strong>it couldn't create the new user, and it reports error with code 0x80070003.</strong></p>

<p>Then I searched around, and I got this: <a href="https://github.com/Microsoft/BashOnWindows/issues/449" rel="noreferrer">moving Linux filesystem - issue #449</a>. <strong>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.</strong> The only way is moving the whole <code>%LocalAppData%</code> 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!</p>

<p>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, <strong>can I create an extra VoIFS work directory in some other places and compile my stuff?</strong></p>

<p>Thanks and regards,
Jackson</p>