如何在 WSL 中删除指定版本的 Ubuntu 以及安装

在 Windows 的 WSL(Windows Subsystem for Linux)中,如果你安装了多个版本的 Ubuntu(例如 Ubuntu 22.04 和 Ubuntu 20.04),想要删除特定版本,可以通过以下步骤完成操作。

步骤 1:查看已安装的 WSL 分发版

首先,通过命令查看 WSL 中已安装的所有分发版及其运行状态:

复制代码
wsl --list --verbose

或者简化版:

复制代码
wsl -l -v

示例输出:

复制代码
  NAME              STATE           VERSION
* Ubuntu-22.04      Running         2
  Ubuntu-20.04      Stopped         2
  • NAME:分发版名称(例如 Ubuntu-22.04)。

  • STATE:分发版的状态(Running 表示正在运行,Stopped 表示已停止)。

  • VERSION:WSL 的版本(1 或 2)。

  • 带有 * 的分发版表示默认分发版。

步骤 2:停止目标分发版

如果目标分发版(如 Ubuntu 22.04)正在运行,需要先停止它

复制代码
wsl --terminate Ubuntu-22.04

步骤 3:卸载目标分发版

通过以下命令删除指定的分发版:

复制代码
wsl --unregister Ubuntu-22.04

注意:

  • 此命令会永久删除指定分发版的文件系统和数据,包括所有用户文件。

  • 在执行此操作前,建议备份重要数据。

步骤 4:确认删除

再次查看已安装的分发版列表,确保目标分发版已被成功卸载:

复制代码
wsl --list --verbose

如果 Ubuntu-22.04 不在列表中,说明该分发版已被成功删除。

其他常用命令

查看默认分发版

运行以下命令查看当前默认分发版(wsl 命令默认进入该分发版):

复制代码
wsl --list --verbose

设置默认分发版

如果希望将 Ubuntu-20.04 设置为默认分发版,可以运行:

复制代码
wsl --set-default Ubuntu-20.04

检查和更改 WSL 版本

查看分发版的 WSL 版本(WSL 1 或 WSL 2):

复制代码
wsl --list --verbose

将分发版版本设置为 WSL 2(如需要):

复制代码
wsl --set-version Ubuntu-20.04 2

总结

通过以上步骤,你可以在 WSL 中安全地删除指定版本的 Ubuntu(如 Ubuntu 22.04),而不会影响其他分发版(如 Ubuntu 20.04)。在操作前,请务必备份重要数据,以免丢失。

====================================

wsl 常用命令

  • wsl --update 这个命令只是更新 WSL 内核和相关组件(比如 WSLg、系统支持文件),并不会自动安装或更新 Ubuntu 发行版。
  • wsl --list --online 查看 WSL 当前支持、可以直接安装的 Linux 发行版列表
  • wsl --list --verbose 查看已安装
  • wsl --install -d Ubuntu 默认安装最新的
  • 安装 Ubuntu 20.04 (wsl --install -d Ubuntu-20.04)

  • wsl --set-default-version 2 :默认安装到 wsl2
  • wsl -d Ubuntu-22.04 启动指定的 Ubuntu
  • wsl --unregister Ubuntu-20.04:卸载
  • wsl --shutdown:重启wsl

vscode 远程连接

vscode 中搜索 WSL 扩展,安装完毕后按下图查看 Ubuntu 系统:

点击 Ubuntu -20.04 右侧的箭头,连接到 Ubuntu :

wsl 踩坑

无法访问外网:wsl setting - 网络 - 网络模式 - Mirrored(镜像模式)

在镜像模式下,wsl 会复制主机的网络接口,如果是单网卡多 IP ,则 Ubuntu 默认使用那个配置了路由的网段 IP。

4 安装 VS Code WSL 扩展

类似通过 remote ssh 插件连接远程主机,我们可以很方便地通过在 VS Code 中安装 WSL 扩展连接 Windows 本地的 WSL Ubuntu 开发环境。

首先,安装 WSL 扩展:

然后,按 Ctrl + Shift + p 呼出命令面板,输入 wsl,选择 Connect to WSL 连接 WSL:

参考

  1. WSL 微软官方文档
相关推荐
linux修理工4 小时前
Claude code与CC-switch安装使用
运维·人工智能
小叶lr4 小时前
jenkins打包前端样式丢失/与本地不一致问题
运维·前端·jenkins
Agent产品评测局4 小时前
互联网行业自动化平台选型,运营全流程提效指南:2026企业级智能体架构与实战全解析
运维·人工智能·ai·chatgpt·架构·自动化
亚空间仓鼠4 小时前
OpenEuler系统常用服务(五)
linux·运维·服务器·网络
minji...5 小时前
Linux 线程同步与互斥(二) 线程同步,条件变量,pthread_cond_init/wait/signal/broadcast
linux·运维·开发语言·jvm·数据结构·c++
虚伪的空想家5 小时前
k8s集群configmap和secrets备份脚本
linux·容器·kubernetes
the sun345 小时前
从 QEMU 直接启动到 U-Boot 引导:嵌入式 Linux 启动流程的本质差异
linux·运维·服务器
三思守心5 小时前
从 0 到 1 搭建自动化内容工厂:深度测评楼兰AI及其在全平台发帖中的表现
运维·服务器·自动化
草莓熊Lotso5 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·linux·运维·服务器·数据库·c++·mysql