在window上打造一个顺手的开发环境:将 WSL 文件系统移动到另一个驱动器

前记: 最近公司要求所有人必须使用公司的电脑来办公(为了安全),这个大家都懂的。所以公司给每个人配了一台window系统的台式机(个人电脑一律不再允许使用)。对于一个用了很多年mac系统的我当然就是 win 上面的各种软件的不顺手,以及一些按键的别扭。所以就开始了折腾,一时不折腾就不顺心 😭

将 WSL 文件系统移动到另一个驱动器

如果我们在使用 widows 遇到了C:驱动器空间不足的情况下,或者我们希望将文件放在与操作系统不同的磁盘上,我们可以通过以下几个步骤将WSL2文件系统移动到另一个空间比较足的驱动器。

前提条件

如果我们使用的用户名 不是root用户,那么我们需要知道它当前用户是谁,在WSL端运行以下linux命令:

bash 复制代码
 # Linux Terminal
 whoami

另外,我们需要知道发行版名称和 WSL版本,在 PowerShell(Windows 端)上运行命令:

css 复制代码
 #PowerShell
 wsl --list --verbose

知道用户名: equiman,linux发行版: Ubuntu,并确认我们正在使用的WSL2 版本,我们就可以准备去了

移动

所有后续步骤都需要在 PowerShell(Windows 端)上完成。

首先,我们需要关闭所有正在使用 WSL 的终端,然后将其关闭以避免运行命令时数据损坏。

perl 复制代码
 # PowerShell
 wsl --shutdown

接下来,我们将从UbuntuLinux 发行版创建备份。

bash 复制代码
 # PowerShell
 mkdir D:\backup
 wsl --export Ubuntu D:\backup\ubuntu.tar

如果你没有看到进度指示器,请不要担心。这可能需要一段时间,具体取决于你备份的数据量。也许这个时候是"一杯茶、一包烟、一个 bug 改一天"的时候了,如果可以早下个班也是可以的🤪。

完成后,首先,更重要的是确保D:\backup\ubuntu.tar文件存在。然后我们需要从C:驱动器中取消注册 linux 发行版。它还将释放 WSL 占用的磁盘空间。

⚠️ 请注意,WSL 驱动器上存储的所有内容都将丢失,并且该命令不会要求确认,因此请确保先备份所需的所有内容!

bash 复制代码
 # PowerShell
 wsl --unregister Ubuntu

然后,再次将其导入到我们的新磁盘上。我将使用D:磁盘作为示例。

arduino 复制代码
 # PowerShell
 mkdir D:\WSL
 wsl --import Ubuntu D:\WSL\ D:\backup\ubuntu.tar

"如果路径有空格,请使用(双引号)字符将路径括起来

默认情况下,Ubuntu 将用作root默认用户,要切换到我们的用户,我们需要运行这些命令。

bash 复制代码
 # PowerShell
 cd $env:USERPROFILE\AppData\Local\Microsoft\WindowsApps
 ubuntu config --default-user equiman

同样如果我们想使用 root 作为默认的用户登录,我们需要执行以下命令:

arduino 复制代码
 # PowerShell
 wsl config --default-user root
 # 或者
 ubuntu config --default-user root

确保更换equiman是你自己的登录账户。

通过运行以下命令重新启动 WSL:

bash 复制代码
# PowerShell
wsl --distribution Ubuntu

恢复

如果在此过程中出现问题,请不要担心,我们可以从备份中恢复我们的 WSL 磁盘。

执行恢复之前,那必须有备份文件。参考上面的备份数据步骤!!!

备份后重复上述步骤即可。


折腾使你进步!!! 🤪

相关推荐
一禅(OneZen)1 小时前
「Windows/Mac OS」AIGC图片生成视频 ,webui + stable-diffusion环境部署教程
windows·stable diffusion
AirDroid_cn1 小时前
OPPO手机怎样被其他手机远程控制?两台OPPO手机如何相互远程控制?
android·windows·ios·智能手机·iphone·远程工作·远程控制
SimonKing3 小时前
告别传统读写!RandomAccessFile让你的Java程序快人一步
java·后端·程序员
小龙在山东4 小时前
Python 包管理工具 uv
windows·python·uv
大模型开发4 小时前
Java开发者LLM实战——使用LangChain4j构建本地RAG系统
程序员·langchain·llm
昏睡红猹4 小时前
我在厂里搞wine的日子
windows·wine
京东云开发者5 小时前
企业和个人基于业务知识和代码库增强的大模型生成代码实践
程序员
love530love7 小时前
Docker 稳定运行与存储优化全攻略(含可视化指南)
运维·人工智能·windows·docker·容器
redreamSo8 小时前
AI Daily | AI日报:DeepMind:AI设计药物开启人体试验; Cluely创始人:先传播,AI产品开发新思路; 博主檄文怒批英伟达显卡及销售问题
程序员·aigc·资讯
狗头大军之江苏分军9 小时前
疑似华为盘古AI大模型翻车造假风波【实时记录篇】
人工智能·机器学习·程序员