WSL 发行版管理
安装、管理、切换和删除多个 Linux 发行版
📋 目录
查看发行版
列出已安装的发行版
# 查看所有已安装的发行版
wsl --list
# 或简写
wsl -l
# 查看详细信息(包括版本和状态)
wsl --list --verbose
# 或简写
wsl -l -v输出示例:
NAME STATE VERSION
* Ubuntu-22.04 Running 2
Debian Stopped 2
Ubuntu-20.04 Stopped 1
*表示默认发行版STATE显示运行状态(Running/Stopped)VERSION显示 WSL 版本(1 或 2)
查看可用的发行版
# 查看 Microsoft Store 中可用的发行版
wsl --list --online
# 或简写
wsl -l -o输出示例:
以下是可安装的有效分发的列表。
使用 'wsl --install -d <Distro>' 安装。
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
openSUSE-42 openSUSE Leap 42
SLES-12 SUSE Linux Enterprise Server v12
Ubuntu-16.04 Ubuntu 16.04 LTS
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
安装发行版
方法一:使用 wsl 命令
# 安装指定发行版
wsl --install -d Ubuntu-22.04
wsl --install -d Debian
wsl --install -d kali-linux
# 安装最新版本的 Ubuntu
wsl --install -d Ubuntu方法二:从 Microsoft Store 安装
- 打开 Microsoft Store
- 搜索 Linux 发行版名称(如 “Ubuntu”、“Debian”)
- 点击”获取”或”安装”
- 安装完成后,从开始菜单启动
方法三:导入自定义发行版
# 从 tar 文件导入
wsl --import <DistroName> <InstallLocation> <TarFile>
# 示例
wsl --import MyUbuntu C:\WSL\MyUbuntu ubuntu-22.04.tar安装到自定义位置
# 指定安装位置
wsl --import Ubuntu-22.04 D:\WSL\Ubuntu-22.04 ubuntu-22.04.tar注意:默认情况下,从 Microsoft Store 安装的发行版会安装到 %LOCALAPPDATA%\Packages\ 目录。
切换发行版
设置默认发行版
# 设置默认发行版
wsl --set-default Ubuntu-22.04
wsl --set-default Debian启动指定发行版
# 启动指定发行版
wsl -d Ubuntu-22.04
wsl -d Debian
# 或使用完整命令
wsl --distribution Ubuntu-22.04在指定发行版中执行命令
# 不进入交互式 shell,直接执行命令
wsl -d Ubuntu-22.04 ls -la
wsl -d Debian -- uname -a
# 执行多个命令
wsl -d Ubuntu-22.04 -- bash -c "cd /home && ls -la"切换 WSL 版本
# 将发行版设置为 WSL 2
wsl --set-version Ubuntu-22.04 2
# 将发行版设置为 WSL 1
wsl --set-version Ubuntu-20.04 1
# 设置默认 WSL 版本
wsl --set-default-version 2注意:转换可能需要几分钟时间,取决于发行版大小。
导出与导入
导出发行版
# 导出发行版为 tar 文件
wsl --export Ubuntu-22.04 D:\Backup\ubuntu-22.04-backup.tar
# 导出时指定压缩(如果支持)
wsl --export Ubuntu-22.04 D:\Backup\ubuntu-22.04-backup.tar --compress用途:
- 备份发行版
- 迁移到其他计算机
- 创建自定义发行版镜像
导入发行版
# 从 tar 文件导入
wsl --import Ubuntu-22.04-Restored D:\WSL\Ubuntu-22.04-Restored D:\Backup\ubuntu-22.04-backup.tar
# 指定 WSL 版本
wsl --import Ubuntu-22.04-Restored D:\WSL\Ubuntu-22.04-Restored D:\Backup\ubuntu-22.04-backup.tar --version 2迁移发行版位置
# 1. 导出发行版
wsl --export Ubuntu-22.04 D:\Temp\ubuntu-22.04.tar
# 2. 注销原发行版
wsl --unregister Ubuntu-22.04
# 3. 导入到新位置
wsl --import Ubuntu-22.04 D:\WSL\Ubuntu-22.04 D:\Temp\ubuntu-22.04.tar
# 4. 设置默认用户(如果需要)
ubuntu-22.04 config --default-user username删除发行版
注销发行版
# 注销发行版(删除但保留数据文件)
wsl --unregister Ubuntu-22.04
# 注销所有发行版(谨慎使用)
wsl --unregister *注意:
- 此操作会删除发行版,但不会删除虚拟硬盘文件(.vhdx)
- 虚拟硬盘文件通常位于
%LOCALAPPDATA%\Packages\或自定义位置
完全删除发行版
# 1. 注销发行版
wsl --unregister Ubuntu-22.04
# 2. 手动删除虚拟硬盘文件
# 位置通常在:
# %LOCALAPPDATA%\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_*\LocalState\
# 或自定义安装位置从 Microsoft Store 卸载
- 打开 Microsoft Store
- 点击右上角”…” → “我的库”
- 找到要卸载的发行版
- 点击”卸载”
更新发行版
更新 WSL
# 更新 WSL
wsl --update
# 检查更新状态
wsl --status更新 Linux 发行版
# 在 WSL 中更新 Ubuntu/Debian
sudo apt update
sudo apt upgrade
# 更新所有包(包括系统包)
sudo apt full-upgrade
# 清理不需要的包
sudo apt autoremove
sudo apt autoclean更新发行版到新版本
# 对于从 Microsoft Store 安装的发行版
# 通常会自动更新,或通过 Store 手动更新
# 对于自定义导入的发行版
# 需要手动导出、下载新版本、重新导入发行版状态管理
启动发行版
# 启动默认发行版
wsl
# 启动指定发行版
wsl -d Ubuntu-22.04停止发行版
# 停止指定发行版
wsl --terminate Ubuntu-22.04
# 停止所有发行版
wsl --shutdown查看运行状态
# 查看所有发行版状态
wsl --list --verbose最佳实践
1. 使用多个发行版
- 开发环境:使用 Ubuntu LTS(稳定)
- 测试环境:使用 Debian 或较新版本的 Ubuntu
- 安全测试:使用 Kali Linux
2. 备份策略
# 定期导出重要发行版
wsl --export Ubuntu-22.04 D:\Backup\ubuntu-22.04-$(Get-Date -Format "yyyyMMdd").tar3. 磁盘空间管理
# 查看发行版大小
# 虚拟硬盘文件位置:
# %LOCALAPPDATA%\Packages\*\LocalState\ext4.vhdx
# 压缩虚拟硬盘(在 PowerShell 中)
wsl --shutdown
Optimize-VHD -Path "C:\Users\YourUsername\AppData\Local\Packages\*\LocalState\ext4.vhdx" -Mode Full4. 性能优化
- 使用 WSL 2 以获得更好的性能
- 将发行版安装在 SSD 上
- 定期清理不需要的包和文件