Windows 10 WSL&Ubuntu 22.04 安装并迁移到 F 盘

WSL安装默认在 C 盘,如果C盘容量不多,那么C盘将不堪重负,那么将安装好的WSL&Ubuntu 22.04迁移至其他盘符是一个解决该问题的方法。

一、WSL & Ubuntu22.04

1.系统设置

首先是系统设置,在 Windows 底部的搜索框搜索"启用或关闭 Windows 功能",勾选"适用于 Linux 的 Windows 子系统" 和 "Windows 虚拟机监控程序平台",需要重启电脑。

2.安装发行版

2.1安装WSL

以管理员身份打开 PowerShell 命令窗口,输入以下命令安装内核:

python 复制代码
wsl --install

更新 WSL 可以通过 wsl --update 命令完成,这是微软官方推荐的更新方式‌,该命令会自动下载并安装最新的 WSL 内核和功能更新‌,更新完成后需重启 WSL 或电脑:

python 复制代码
wsl --shutdown

如果因为网络问题导致更新失败,可以使用 --web-download 强制从微软服务器下载

python 复制代码
wsl --update --web-download

可以输入下面的命名验证更新结果:

python 复制代码
wsl --version
2.2安装Ubuntu

接下来是安装Ubuntu,我们安装Ubuntu22.04

打开 Windows 应用商店搜索 "Ubuntu",安装 "Ubuntu 22.04.5 LTS"

因为我之前已经安装好了,所有显示"打开",点击免费下载即可自动下载安装完成

Ubuntu安装结束之后点击"打开",系统将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。(截图是20.04版本的,前面安装22.04的时候忘记截图了)

在窗口里面输入用户名,回车之后输入密码即可。完成设置后,将进入 Linux 发行版的终端界面。这里可以执行 Linux 命令,并进行开发和运行应用程序。

3.WSL&Ubuntu迁移到F盘

通过上述的安装方式数据都会存在 C 盘,大概一两GB,我们把这些数据迁移到 F 盘。

3.1查看 WSL 虚拟机状态并停止

首先我们查看一下虚拟机状态,在 PowerShell 输入下列命令:

python 复制代码
wsl -l -v

会有下面的输出

执行 wsl --shutdown 命令使其停止运行,再次执行 wsl -l -v 确认停用

python 复制代码
wsl --shutdown

3.2导出/导入备份

先手动创建迁移的目标文件夹,然后通过命令导出原虚拟机的备份:

我的目标文件夹为F盘的一个名为"WSL"的文件夹,该文件夹必须存在,不存在的话运行命令会报错

python 复制代码
wsl --export Ubuntu-22.04 F:\WSL\Ubuntu.tar

你安装的如果是20.04或者其他版本,你可以将上面命令中的系统替换为你安装的系统

F是接下来存放虚拟机备份的盘符,哪个盘符都可以。

然后注销原 wsl 虚拟机:

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

再然后将备份导入到新的目标文件夹中:

python 复制代码
wsl --import Ubuntu-22.04 F:\Ubuntu2204 F:\WSL\Ubuntu.tar

F:\Ubuntu2204是接下来导入虚拟机的文件夹,你可以根据情况指定,但是文件夹需要先存在

F:\WSL\Ubuntu.tar是前面存放虚拟机备份的路径(备份建议一直保存,以备不时之需)

Ubuntu2204文件夹里面是一个磁盘映像文件

PowerShell 输入下列命令恢复默认用户

python 复制代码
Ubuntu2204 config --default-user your_user_name

PS:我不做这一步也可以正常使用。

相关推荐
杨云龙UP2 分钟前
mysqldump逻辑备份文件恢复总结:全库恢复、单库恢复,一篇讲明白
linux·运维·服务器·数据库·mysql·adb
舰长1155 分钟前
linux系统服务器加固1、中风险 未设置登录失败处理功能和登录连接超时处理功能。2、中风险 未限制默认账户的访问权限。3、中风险 未实现管理用户的权限分离。
linux·运维·服务器
mounter62544 分钟前
Linux 7.0 重磅更新:详解 nullfs 如何重塑根文件系统挂载与内核线程隔离
linux·运维·服务器·kernel
色空大师1 小时前
【网站搭建实操(一)环境部署】
java·linux·数据库·mysql·网站搭建
sghuter2 小时前
Ubuntu安装Redis
redis·ubuntu·bootstrap
A.A呐2 小时前
【Linux第十三章】缓冲区
linux·服务器
想唱rap3 小时前
Linux线程
java·linux·运维·服务器·开发语言·mysql
HwJack203 小时前
HarmonyOS响应式布局与窗口监听:让界面像呼吸般灵动的艺术
ubuntu·华为·harmonyos
cccccc语言我来了3 小时前
Linux(9)操作系统
android·java·linux
Lueeee.3 小时前
Linux驱动中为什么既有 sysfs,又有字符设备?以 DHT11 驱动为例彻底讲透
linux·驱动开发