在windows下通过wsl工具管理Linux子系统
wsl的使用
wsl的安装
- 打开 控制面板 > 程序 > 启用或关闭 Windows 功能。
- 勾选 适用于 Linux 的 Windows 子系统 和 虚拟机平台。
- 点击 确定,然后重启计算机。
用wsl工具安装Linux分发版
重启后的后续步骤通过命令行窗口完成(win + r输入cmd打开命令行窗口)。
-
重启计算机后,更新wsl工具至最新版本
wsl --update
-
查看可安装的Linux发行版
wsl --list --online
当前查询结果:
-
根据第一列NAME中有的发行版选项,安装指定的发行版。如安装Ubuntu-24.04
wsl --install Ubuntu-24.04
-
安装完成后,在windows的命令行中通过
wsl
启动默认的 Linux 发行版,并进入该发行版的默认 shell。 -
常规的管理:
-
查看已安装的发行版
wsl --list --verbose
-
终止所有正在运行的分发版
wsl --shutdown
若仅终止某个正在运行的发行版,如终止Ubuntu-24.04
wsl --terminate Ubuntu-24.04
-
卸载某个版本的发行版,如卸载Ubuntu-24.04
wsl --unregister Ubuntu-24.04
-
切换默认的发行版,如切换Ubuntu-22.04为默认的发行版
wsl --set-default Ubuntu-22.04
-
wsl命令参数
运行 Linux 二进制文件的参数
-
在不使用默认 Linux shell 的情况下执行指定的命令。
--exec, -e <CommandLine>
-
使用提供的 shell 类型执行指定的命令。
--shell-type <standard|login|none>
-
按原样传递剩余的命令行。
--
-
将指定目录设置为当前工作目录。
--cd <Directory>
如果使用 ~,则将使用 Linux 用户的主路径。如果路径以 / 字符开始,它将被解释为绝对 Linux 路径。
否则,该值必须是绝对 Windows 路径。 -
运行指定的分发版
。--distribution, -d <DistroName>
-
运行指定的分发版 ID。
--distribution-id <DistroGuid>
-
以指定用户身份运行。
--user, -u <UserName>
-
为系统分发版启动 shell。
--system
管理wsl的参数
-
显示使用情况信息
。--help
-
出于诊断目的打开 WSL2 调试 shell。
--debug-shell
-
安装
linux发行版
。--install [Distro] [Options...] [Distro]:使用 'wsl.exe --list --online'查询有效分发版的列表。 [Options...]: --enable-wsl1 启用 WSL1 支持。 --from-file <Path> 从本地文件安装分发版。 --legacy 使用旧分发版清单。 --location <Location> 设置分发版的安装路径。 --name <Name> 设置分发的名称。 --no-distribution 仅安装所需的可选组件,不安装分发版。 --no-launch, -n 安装后不要启动分发版。 --version <Version> 指定要用于新分发的版本。 --web-download 从 Internet 而不是 Microsoft Store 下载分发版。
-
更改发行版特定选项。
--manage <Distro> <Options...> <Options...>: --move <Location> 将分发移到新位置。 --set-sparse, -s <true|false> 将发行版的 vhdx 设置为稀疏,从而允许自动回收磁盘空间。 --set-default-user <Username> 设置分发版的默认用户。
-
在所有 WSL 2 分发版中附加和装载物理磁盘或虚拟磁盘。
--mount <Disk> [options...] [options...]: --vhd 指定 <Disk> 引用虚拟硬盘。 --bare 将磁盘附加到 WSL2,但不要装载它。 --name <Name> 使用装入点的自定义名称装载磁盘。 --type <Type> 装载磁盘时要使用的文件系统(如果未指定)默认为 ext4。 --options <Options> 其他装载选项。 --partition <Index> 要装载的分区的索引(如果未指定)默认为整个磁盘。
-
更改新安装的 Linux 分发版的运行环境(WSL1/WSL2)。
--set-default-version <Version>
-
立即终止所有正在运行的分发版
--shutdow
-
显示Windows的Linux子系统状态
。--status
-
从所有运行在 WSL 2模式下的 Linux 发行版中卸载和分离磁盘。
--unmount [磁盘]
-
从此计算机卸载wsl工具
。--uninstall
-
更新wsl工具
。--update
-
显示wsl工具版本信息
。--version, -v
在wsl中管理分发版的参数
-
将分发版导出到 tar 文件。
--export <Distro> <FileName> [选项] 文件名可以是 - for stdout。 选项: --format <Format> 指定导出格式。支持的值: tar、tar.gz、vhd。
-
将指定的 tar 文件作为新分发版导入。
--import <Distro> <InstallLocation> <FileName> [选项] 文件名可以是 - for stdin。 选项: --version <Version> 指定要用于新分发的版本。 --vhd 指定所提供的文件是 .vhdx 文件,而不是 tar 文件。 此操作在指定的安装位置创建 .vhdx 文件的副本。
-
将指定的 .vhdx 文件作为新分发版导入。
--import-in-place <Distro> <FileName> 必须使用 ext4 文件系统类型设置此虚拟硬盘的格式。
-
列出分发版
。--list, -l [选项] 选项: --all 列出所有分发版,包括当前 正在安装或卸载的分发版。 --running 仅列出当前正在运行的分发版。 --quiet, -q 仅显示分发版名称。 --verbose, -v 显示有关所有分发版的详细信息。 --online, -o 显示适合通过 'wsl --install' 安装的可用分发版列表。
-
将默认的分布版
。--set-default, -s <Distro>
-
更改指定的Linux 分发版的运行环境版本
。--set-version <Distro> <Version>
-
终止指定的分发版
。--terminate, -t <Distro>
-
取消注册分发版并删除根文件系统
。--unregister <Distro>