关闭 WSL 中正在运行的 Linux 发行版

你使用 WSL 在 Windows 内运行 Linux 吗?你想知道如何关闭在 WSL 中运行的 Linux 发行版吗?

你当然可以在 WSL 中运行的 Linux 系统中 执行 shutdown 命令

 
  1. sudo shutdown now

你还可以使用 wsl 命令关闭 Linux 系统。如果你有多个发行版在 WSL 中运行,这是一种极好的方法。

在 WSL 中使用 Windows 终端关闭 Linux 系统

在这个方法中,我假设通常的 shutdown 命令在 WSL Linux 系统中不起作用。

首先,在 Windows 中打开一个终端。在这里,我使用的是 Windows 11,并在 WSL 2 下安装了 Ubuntu。

打开 Windows 终端

打开 Windows 终端

? 你可以在标准的 Windows 终端上使用 wsl 命令。在运行的 Linux 发行版中也可以访问该命令。这里,命令的名称是 wsl.exe

现在,你需要列出已安装的发行版及其状态。为此,请输入

 
  1. wsl --list --verbose
  2. wsl -l -v

列出已安装的发行版

列出已安装的发行版

在这里,你可以看到,我已经安装了一个 WSL Ubuntu,它目前正在运行。

关闭所有正在运行的 Linux 发行版

有时,你可能想一次性停止正在运行的 WSL 实例。

在 Powershell 或 Windows 终端中,使用以下命令:

 
  1. wsl --shutdown

这将关闭所有会话。

此外,你还可以在任何正在运行的 WSL Linux 发行版终端中执行相同的功能。在发行版中时,你只需要使用 wsl.exe 而不是 wsl

 
  1. wsl.exe --shutdown

关闭所有正在运行的 WSL 发行版

关闭所有正在运行的 WSL 发行版

运行此命令后,所有正在运行的 WSL 发行版都将终止。WSL 2 轻量级虚拟机也被终止。因此,如果你想重新启动 WSL 2 虚拟机环境,它将很有用。

终止特定的 Linux 发行版

要终止特定正在运行的 WSL 发行版,请打开单独的 Windows 终端并运行:

 
  1. wsl --terminate <发行版名称>

此处,发行版名称是你使用 wsl -l -v ⁣ 命令列出所有已安装的 WSL 发行版时获得的名称。

列出 WSL 发行版

列出 WSL 发行版

 
  1. wsl --terminate Ubuntu

执行后,指定的 Linux 发行版将被终止。

如果你在另一个发行版中,请使用以下命令列出系统上安装的所有 WSL 发行版:

 
  1. wsl.exe -l -v

现在,使用以下命令终止所需的发行版:

 
  1. wsl.exe --terminate <发行版名称>

从另一个 WSL 发行版中关闭 WSL 发行版

从另一个 WSL 发行版中关闭 WSL 发行版

总结

有些人直接关闭正在运行的 Linux 应用,但我认为这不太优雅。

另外,就像 Linux 终端一样,你可以使用:

  • logout 命令,用于关闭该发行版。
  • exit 命令用于退出运行 Linux 发行版的终端。
  • 或者,按 CTRL+D 执行与 exit 命令相同的操作。

但关闭 Linux 系统的 WSL 方式还有一个额外的优势,即可以针对多个 Linux 系统执行此操作。

我希望它对你有帮助。

(题图:DA/615fd564-a02c-4340-9c8f-ebabcc7c0e0c)


via: Shut Down WSL Running Linux Distributions

作者:Sreenath 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

<think> 由于用户的问题是关于在WSL2中降级Linux内核版本的方法,我将结合站内引用和常见操作步骤来回答。注意:降级内核可能涉及系统级操作,请谨慎执行。 ### 降级WSL2内核版本的步骤 1. **确认当前内核版本** 在WSL终端输入: ```bash uname -r ``` 输出类似:`6.6.87.2-microsoft-standard-WSL2`。 2. **下载旧版WSL2内核安装包** 访问[Microsoft WSL内核发布页](https://github.com/microsoft/WSL2-Linux-Kernel/releases),找到目标旧版本(如5.10.x)的压缩包(通常为`.zip`格式)。 3. **替换默认内核** - 解压下载的压缩包,得到内核文件(如`bzImage`)。 - 在Windows中创建备份目录(例如`C:\wsl_kernel_backup`),将现有内核`%USERPROFILE%\AppData\Local\Microsoft\WindowsApps\kernel`复制到备份目录。 - 将下载的旧版`bzImage`重命名为`kernel`,覆盖到原路径。 4. **配置WSL使用指定内核** 在Windows PowerShell中创建或修改WSL配置文件: ```powershell # 新建配置文件(若不存在) New-Item -Path "$env:USERPROFILE\.wslconfig" -Type File # 写入内核路径 Set-Content -Path "$env:USERPROFILE\.wslconfig" -Value "[wsl2]`nkernel=$env:USERPROFILE\AppData\Local\Microsoft\WindowsApps\kernel" ``` 5. **重启WSL实例** 关闭所有WSL窗口,执行: ```powershell wsl --shutdown wsl -d <发行版名称> # 重新启动发行版,如Ubuntu-20.04 ``` 再次运行`uname -r`验证版本。 > **注意**:降级后可能出现兼容性问题(如文件系统异常)。若失败,可通过备份恢复原内核[^1]。 §§相关问题§§ 1. 如何升级WSL2到最新内核版本? 2. WSL2内核降级后常见问题如何解决? 3. 除了内核替换,还有哪些方法解决VCS兼容性问题? [^1]: 参考WSL官方文档:https://docs.microsoft.com/en-us/windows/wsl/wsl-config#configure-global-options-with-wslconfig </think> ### 在 WSL2 中降级 Linux 内核版本的方法 #### 步骤 1:检查当前内核版本 ```bash uname -r # 示例输出:6.6.87.2-microsoft-standard-WSL2 ``` #### 步骤 2:下载目标旧版本内核 访问 Microsoft WSL 内核发布页: > https://github.com/microsoft/WSL2-Linux-Kernel/releases 选择稳定旧版本(如 `5.10.16.3`)下载压缩包 #### 步骤 3:替换内核文件 1. 解压下载的压缩包,找到 `bzImage` 文件 2. 备份当前内核: ```powershell mv $env:USERPROFILE\AppData\Local\Packages\<发行版包名>\LocalState\kernel $env:USERPROFILE\kernel_backup ``` 3. 替换内核: ```powershell cp <下载的bzImage路径> $env:USERPROFILE\AppData\Local\Packages\<发行版包名>\LocalState\kernel ``` #### 步骤 4:配置 WSL 使用指定内核 在 Windows 用户目录创建/修改 `.wslconfig` 文件: ```ini [wsl2] kernel=C:\\Users\\<用户名>\\AppData\\Local\\Packages\\<发行版包名>\\LocalState\\kernel ``` #### 步骤 5:重启 WSL 实例 ```powershell wsl --shutdown # 关闭所有 WSL 实例 wsl -d <发行版名称> # 重新启动发行版 ``` #### 验证降级结果 ```bash uname -r # 应显示目标版本如 5.10.16.3 ``` > **注意事项**: > 1. 不同发行版(Ubuntu/Debian)的包名路径不同,可通过 PowerShell 命令查找: > ```powershell > Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss\ | ForEach-Object {Get-ItemProperty $_.PsPath} > ``` > 2. 建议优先降级到 `5.10.x` 等长期支持版[^1] > 3. 内核文件路径中的 `<发行版包名>` 示例: > - Ubuntu 22.04: `CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc`
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值