Windows子系统保存位置更改
目录
- 使用场景
- 解决思路
- 操作流程
- 关闭子系统
- 找到文件存放地址
- 新的路径
- 文件迁移
- 创建链接
使用场景
使用WSL(Linux子系统)做深度学习开发,在微软的应用商店安装的Ubuntu22.04会将系统默认安装在C盘,随着使用时间测增长,子系统的体积越来越大,本来就捉襟见肘的C盘更是雪上加霜。本文教你解决这个困扰。
解决思路
使用文件夹链接将存放磁盘文件的目录映射到D盘,这样不需要对WSL配置做更改,操作简单。
操作流程
关闭子系统
在windows下使用Win+x打开快捷方式,选择终端
(Win11)或者Windows PowerShell
(Win10),在命令行中输入wsl --shutdown
关闭所有子系统。
找到文件存放地址
我是直接使用应用商店安装的Ubuntu22.04,一般默认的磁盘文件放在以下的地址
C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState
这里面 Administrator
是我的用户名,CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc
是安装程序创建的文件夹(找不到可以搜索一下Ubuntu)。在上述的路径中有一个ext4.vhdx
文件,这个文件就是子系统的磁盘文件。
新的路径
把文件放在D盘
,所在在D盘
创建文件夹wsl
用于存放新的文件,你也可以选择其他路径。
文件迁移
将第二步的ext4.vhdx
文件直接ctrl+x剪切到D:\wsl
文件夹。移动结束后,删除ext4.vhdx
的上层文件夹LocalState
,不删除下一步程序不能运行。
创建链接
使用Win+r,输入cmd
打开命令行(一定是cmd
,PowerShell
会报错)。然后输入命令:
mklink /j C:\Users\Administrator\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState D:\wsl
就创建好了,记得将其中的路径改成你的。再运行Ubuntu,程序正常运行。C盘空间也释放了。