8种机械键盘轴体对比
本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?
@author:zhanjzh
Windows下的Linux子系统对于工作在Linux系统下的人而言是十分方便的,但是用久了就会发现子系统对C盘的占用空间越来越大,原因在于Linux默认安装在用户目录下的 AppDataLocalPackages 下。
本文介绍在Windows下对Linux子系统迁移的方法。
工具
mklink : 本质上是一个创建链接的工具,这里使用mklink 欺骗系统,使系统误以为还是安装在了C盘
首先,我们需要找到子系统安装的文件系统在哪个位置,根据以往的经验,系统位置在:C:UsersxxxxAppDataLocalPackagesCanonicalGroupLimited.UbuntuonWindows
注意 AppData 文件夹是隐藏文件夹,你需要打开查看隐藏文件的选项。
但实际上这个根据你自己安装的子系统需要自己另外确定,我上次安装的文件夹是上面哪个,第二次安装又变成了下面这个:C:UsersxxxxAppDataLocalPackagesCanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
定位Linux子系统的文件系统位置
简单直接的方法:首先安装一遍Linux子系统,在C:UsersxxxxAppDataLocalPackages
下查看带有类似 CanonicalGroupLimited.UbuntuonWindows 字眼的新文件夹,记下它的名字。
开始安装卸载Linux子系统。
卸载的原因在于Linux子系统下的文件系统的权限更改十分复杂,这里面的一些文件不属于Windows下的管理员用户所有,也不属于你的用户,它就是Linux下用户所有的,使用一般的修改权限文件方法很容易出问题。因此还是推荐先备份后再卸载。创造软链接
使用管理员打开cmd, 输入下面的命令:1mklink /j C:UsersXXXXAppDataLocalPackagesCanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc H:Linux-shareWSL
后面那个 H:Linux-shareWSL 是非系统盘的位置。创建成功后再打开应用商店,安装Linux子系统。
问题安装成功后出现 0x800703faWslRegisterDistribution failed with error: 0x800703fa
网上查过方法:在运行窗口中执行“services.msc”指令,在本地服务中重启 LxssManager 服务即可。
经确认,行之有效。如果出现了什么文件夹权限的问题(我没有出现过),可以用下面的命令:icacls Linux-shareWSL /grant “你的用户名:(OI)(CI)(F)”
我没有遇见过文件权限问题,但是我曾经执行过上面这条语句,如果遇见了,可以试一下。
总结
网上查找了许多方法,试过了不少。有个博主使用的是将AppData下的Local目录全部指向其他地方的方法,如果这个方法有效的话想必能省很多C盘空间,可惜的是,不行。文件在复制迁移的过程会遇见权限问题,即便是另外使用管理员用户也不行,除非使用 PE 盘,但是那样太过于麻烦。 这篇文章介绍的方法其实是一种折中的方式,迁移文件不涉及到那些存在权限问题的文件。
同样的道理,使用 mklink 工具可以将其他大文件迁移到非系统盘后再创造软链接,用于减小C盘负担是很不错的。