WSL文件存储位置迁移

windows有个很烦恼的问题,就是系统级的东西,基本上都喜欢放在C盘,但很多时候,这些东西都可以放在别的盘,WSL也是一样。而且WSL作为一个内置的系统,他的占用不能说大,也只能说不小,为了不让我们一天到晚对着红色的C盘叹息,我们可以迁移一下他的位置。

首先,就像我们修电脑或修机器一般,首要任务是关闭电源,那对于内置系统的WSL来说,那就是关闭系统 输入以下指令关闭正在运行的WSL

arduino 复制代码
wsl --shutdown

然后我们可以使用刚刚用到的指令去查看WSL的状态。

复制代码
wsl -l -v

然后我们就在别的盘,就是你想迁移到的盘,新建一个文件夹去存放我们的WSL 我这里存的是E盘,新建了一个目录叫Ubuntu_WSL 于是乎,我们就得先导出WSL的备份(比如命名为Ubuntu.tar)

arduino 复制代码
wsl --export Ubuntu-22.04 E:\Ubuntu_WSL\Ubuntu.tar

确定在此目录下可以看见备份Ubuntu.tar文件之后,注销原有的WSL

css 复制代码
wsl --unregister Ubuntu-22.04

将备份文件恢复到E:\Ubuntu_WSL中去

arduino 复制代码
wsl --import Ubuntu-22.04 E:\Ubuntu_WSL E:\Ubuntu_WSL\Ubuntu.tar

这时候启动WSL,发现好像已经恢复正常了,但是用户变成了root,之前使用过的文件也看不见了。 所以我比较推荐,安装的时候就直接迁移不要动里面的文件。

如果你已经动了,那便可以恢复默认用户 也可以在cmd里,执行:

arduino 复制代码
Ubuntu2204 config --default-user <username>

以管理员身份运行PowerShell,执行:

arduino 复制代码
ubuntu2204.exe config --default-user <username>

如果你一开始没有设置普通用户,那可以新建一个。 新建流程如下 在ubuntu终端输入

xml 复制代码
adduser <用户名>

输入密码即可

假若你只是忘记用户名,那可以在ubuntu终端输入如下指令查看

bash 复制代码
ls /home
相关推荐
chen<>26 分钟前
C++ 六种 memory_order:从原子性到线程间可见性.md
java·linux·开发语言·c++
一直C28 分钟前
Linux系统编程|进程间通信IPC全套详解(1)(管道、信号)
linux·c语言·开发语言·网络·青少年编程·visual studio code
库玛西1 小时前
Linux网络编程:HTTP/HTTPS协议核心技术全解析
linux·运维·服务器·网络·c++·http·https
sxd20011 小时前
Vmware和multicast
linux·windows·vmware·无线桥接·multicast
暴力求解1 小时前
Linux网络---NAT代理服务、内网穿透
linux·网络·智能路由器
一直C1 小时前
Linux系统编程|信号进阶 + SystemV IPC(消息队列、共享内存)
linux·c语言·开发语言·算法·青少年编程·vim
_F_y1 小时前
Linux网络常用指令
linux·运维·网络
老当益壮梁奶奶3 小时前
Linux软件编程学习笔记(九):消息队列、共享内存与信号灯详解
linux·c语言·笔记·学习
小雪崩3 小时前
嵌入式学习 day35:进程间通信-消息队列、共享空间及有名信号量
linux·c语言·学习
从零开始的嵌入式之旅3 小时前
day33
linux·c语言·经验分享·笔记·嵌入式硬件