在 Windows 1803 中重新启动 WSL

lav*_*rya 10 windows-10 windows-subsystem-for-linux windows-10-v1803

在过去的 Windows 10 版本中,可以通过关闭所有活动终端来退出 WSL,但是随着WSL后台任务的引入,这不再有效。有没有办法在不重新启动主机系统的情况下退出 WSL?

小智 16

是的。

作为管理员重新启动 Windows 10 上的 Windows 服务“LxssManager”。这会干净启动 WSL。如果未启用自动启动,则必须重新启动 Linux 子系统中的服务(例如 xrdp)。


Sam*_*nty 11

  1. WIN+R -> services.msc
  2. LxssManager

    在此处输入图片说明

  3. 右键单击-> Restart

    在此处输入图片说明


小智 11

Powershell 解决方案

Get-Service LxssManager | Restart-Service
Run Code Online (Sandbox Code Playgroud)

  • 我认为最优雅的解决方案。不要忘记,您必须以严格的管理员权限启动 PowerShell。 (3认同)

Leo*_*Leo 6

正如其他答案提到的,特别是对于 Windows 1803,以下内容应该在 powershell 或 cmd 中运行:

net stop LxssManager

Run Code Online (Sandbox Code Playgroud)

正如 @Ramhound 所强调的,仅对于具有 wsl 2 的较新版本,您还可以从 powershell 或 cmd 运行此命令:

关闭所有实例:

wsl.exe --shutdown 
Run Code Online (Sandbox Code Playgroud)

关闭特定实例(例如 Ubuntu):

wsl.exe -t Ubuntu 
Run Code Online (Sandbox Code Playgroud)

显示当前实例列表:

wsl.exe -l
Run Code Online (Sandbox Code Playgroud)