本文记录了 Windows 系统上管理 WSL2 可用 Linux 发行版的详细命令说明。
前言
以下为 Wikipedia 对 WSL 的描述。
适用于Linux的Windows子系统(英语:Windows Subsystem for Linux,简称WSL)是一个为在Windows 10和Windows Server 2019以上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层。
Windows 版本 : Windows 11 家庭版,22H2
本文中的命令均为在 Windows 终端上执行。
安装发行版
本部分为 WSL2 安装 Linux 发行版的命令示例,可任选一个尝试(若无法下载,可添加 --web-download
参数)。
- 以管理员身份打开 Windows 终端,执行以下命令安装
Ubuntu
子系统wsl --install Ubuntu
- 以管理员身份打开 Windows 终端,执行以下命令安装
Debian
子系统(使用--web-download
参数)wsl --install -d Debian --web-download
- 以管理员身份打开 Windows 终端,执行以下命令安装
kali-linux
子系统wsl --install -d kali-linux
- 以管理员身份打开 Windows 终端,执行以下命令安装
Ubuntu-22.04
子系统wsl --install -d Ubuntu-22.04
- 以管理员身份打开 Windows 终端,执行以下命令安装
OracleLinux_9_1
子系统wsl --install -d OracleLinux_9_1
- 以管理员身份打开 Windows 终端,执行以下命令安装
SUSE-Linux-Enterprise-15-SP5
子系统(使用Tab
键切换选项)wsl --install -d SUSE-Linux-Enterprise-15-SP5
更多可安装的 Linux 发行版需要执行以下命令查看
wsl --list --online
常见报错
- WslRegisterDistribution failed with error: 0x8004032d
- 进入 控制面板 -> 程序 -> 启用或关闭 Windows 功能 ,勾选 适用于 Linux 的 Windows 子系统 和 虚拟机平台 ,然后重启 Windows 系统。
-
- WslRegisterDistribution failed with error: 0x800701bc
- 执行以下命令安装最新的 WSL 内核
wsl --update
- 如果这个应用被卸载了,就需要重新安装 WSL 的内核
- 执行以下命令安装最新的 WSL 内核
删除发行版
本部分为 WSL2 删除 Linux 发行版的命令示例,只能删除已安装的 Linux 发行版。
- 以管理员身份打开 Windows 终端,执行以下命令删除
Ubuntu
子系统wsl --unregister Ubuntu
- 以管理员身份打开 Windows 终端,执行以下命令删除
Debian
子系统wsl --unregister Debian
- 以管理员身份打开 Windows 终端,执行以下命令删除
kali-linux
子系统wsl --unregister kali-linux
- 以管理员身份打开 Windows 终端,执行以下命令删除
Ubuntu-22.04
子系统wsl --unregister Ubuntu-22.04
- 以管理员身份打开 Windows 终端,执行以下命令删除
OracleLinux_9_1
子系统wsl --unregister OracleLinux_9_1
- 以管理员身份打开 Windows 终端,执行以下命令删除
SUSE-Linux-Enterprise-15-SP5
子系统wsl --unregister SUSE-Linux-Enterprise-15-SP5
如果需要移除 Windows 资源管理器中的 Linux 图标,则需要在 启用或关闭 Windows 功能 中取消勾选 适用于 Linux 的 Windows 子系统 选项,并重启 Windows 系统。
其他常用命令
- 列出所有可安装的 Linux 发行版
wsl --list --online
- 列出已安装的 Linux 发行版
wsl --list --verbose
- 列出正在运行的 Linux 发行版
wsl --list --running
- 设置 Debian 为默认的 Linux 发行版
wsl --set-default Debian
- 关闭所有 Linux 发行版
wsl --shutdown
- 将 Ubuntu-22.04 发行版以
.vhdx
的格式导出到当前文件夹wsl --export Ubuntu-22.04 ./Ubuntu-22.04.vhdx --vhd
- 以
root
用户的身份运行 Ubuntu-22.04 发行版wsl -d Ubuntu-22.04 -u root
- 显示 WSL 的帮助命令
wsl --help
总结
我个人比较常用 Ubuntu 的相关发行版,因为 Debian 需要更换 apt 源,否则下载速度没 Ubuntu 快。
WSL2 默认是从 Microsoft Store 下载 Linux 发行版,所以偶尔有下载不动的情况。
如果真的下载不动,建议添加 --web-download
参数后再次尝试。