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
相关推荐
Darkwanderor2 分钟前
使用管道实现进程间通信 (IPC, Inter-Process Communitation)
linux·c语言·c++
Nuanyt16 分钟前
Linux系统的 Shell 常见指令和常见知识点(以bash为主)
linux·运维·chrome·bash
程序员老陆21 分钟前
FFmpeg 硬解在 Linux 上:从“能跑”到“跑满 GPU”的实战笔记
linux·笔记·ffmpeg
星恒随风26 分钟前
Linux 权限详解:从 rwx、chmod 到 umask、目录权限与粘滞位
linux·运维·服务器·笔记·学习
拳里剑气28 分钟前
Linux:进程间通信
linux·运维·数据库·进程
lsh曙光1 小时前
防火墙-iptables
linux
阳光九叶草LXGZXJ1 小时前
达梦数据库-报错-12-[-7184]:对象定义[XXX]被修改,版本检查失败
linux·运维·服务器·数据库·sql·学习
小此方1 小时前
Re:Linux系统篇(四十九)线程篇 · 二:为什么现代操作系统选择分页式存储?分页如何解决物理内存碎片?分页结构如何演化到页表、页目录、MMU?
linux·运维·驱动开发
Huangjin007_2 小时前
【Linux 系统篇(十一)】基础开发工具(六) —— 版本控制器 Git
linux·运维·git
j7~2 小时前
【Linux】二十六.线程篇三《Linux多线程编程:线程控制、线程ID以及进程地址空间分布、线程局部存储__thread以及clone系统调用》---详解
linux·运维·服务器·开发语言·c++·多线程编辑·线程的控制