WSL从C盘到迁移到其他盘
最近由于在工作中VM虚拟机用的够够的,ssh总是会断开,保存文件改动也会卡一会,所以就想用下WSL,在微软商店安装完wsl后,拉取了项目代码大概70G
,结果C盘直接爆满!还剩2G,电脑出现卡顿,心情一下子就不好了!
于是在网上查阅教程并实践,将WSL从C盘完美迁移到D盘
中,下面上操作步骤,亲身实践可用~
1.查看当前wsl运行实例
打开CMD,输入wsl -l -v查看wsl虚拟机的名称与状态。
wsl -l -v
当前运行的ubuntu为 Ubuntu-20.04
,需要记住这个实例名字
2.停止运行wsl
cmd执行 wsl --shutdown关闭当前正在运行的实例,并再次执行wsl -l -v查看实例是否已经被关闭
wsl --shutdown
wsl -l -v
3.导出wsl备份文件
将当前wsl整个镜像导出,下次wsl可以直接从导出的镜像启动
在其他盘创建一个文件夹,用于存放这个导出文件,这里我将C盘的wsl导出到D盘的WSL目录下,并且命名为Ubuntu.tar
wsl --export Ubuntu-20.04 D:\WSL\Ubuntu.tar
这个过程会持续比较久,我的wsl有70多G,所以花了十几分钟。
在该操作完成后,命令行会打印 操作成功完成。
4.注销原有的WSL
由于我们对C盘的WSL进行了备份,所以可以直接注销C盘的WSL,cmd执行命令 wsl --unregister Ubuntu-20.04
wsl --unregister Ubuntu-20.04
执行完成后,可以看到C盘的空间释放了很多
5.从备份中启动wsl
由于第四步中做了备份,所以wsl可以直接导入该备份并启动,执行命令
wsl --import Ubuntu-20.04 D:\WSL\Ubuntu2004 D:\WSL\Ubuntu.tar
注意,–import后面要跟三个参数,第一个参数是Ubuntu镜像版本,第二个参数是新的WSL的安装路径,第三个参数是wsl的导入路径,不要落下参数,否则会导入失败。
执行完上述步骤后,启动wsl,发现wsl可以成功启动了!
一些问题:
启动WSL以后,又可能出现用户变成了root,之前使用过的文件也看不见了的情况,可以执行一下操作进行恢复:
在cmd输入以下命令:
Linux发行版名称 config --default-user 原本用户名
例如:
Ubuntu2204 config --default-user cham
Ubuntu2204表示Ubuntu20-04,cham表示你原来的用户名
再次重新打开WSL,应该就恢复正常了
wsl可以通过备份导出再导入的方式进行转移,减轻C盘负担,让你的电脑库库流程!
程序员DeRozan专注Linux/MacOS下的 C/C++ 开发,本公众号将持续分享工作、学习中遇到的各种疑难杂症,持续分享开发知识与心得体验,关注我,每天进步一点点~
聊天界面回复【1207】获取Linux/C/C++/Java/Python以及计算机硬核资料~