windows子系统-wsl命令基础用法和无响应问题排查及解决方法

windows子系统-wsl命令基础用法和无响应问题排查及解决方法

一、资料

微软帮助手册

博文资料

二、最低系统要求

若要更新到 WSL 2,需要运行 Windows 10。
对于 x64 系统:版本 1903 或更高版本,内部版本为 18362.1049 或更高版本。
对于 ARM64 系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。
如果运行的是 Windows 10 版本1903 或 1909,请在 Windows 菜单中打开“设置”,导航到“更新和安全性”,然后选择“检查更新”。 内部版本号必须是 18362.1049+ 或 18363.1049+,次要内部版本号需要高于 .1049

注:查看系统版本号命令:winver

三、常用命令

  • wsl --status //检查 WSL 状态
  • wsl //进入默认的发行版本,退出执行 exit
  • wsl -l -v //列出已安装的 Linux 发行版
  • wsl --terminate //终止指定的发行版或阻止其运行
    • 例:wsl --terminate Ubuntu-18.04
  • wsl --shutdown //重启wsl服务
  • wsl --set-default //设置默认 Linux 发行版
  • wsl --set-version //将WSL版本设置为1或2
  • wsl --set-default-version //设置默认 WSL 版本
  • wsl --distribution --user //运行特定的Linux发行版
  • wsl -u , wsl --user //以特定用户的身份运行
  • wsl config --default-user //更改发行版的默认用户
  • wsl --unregister //注销或卸载 Linux 发行版

四、检测wsl环境

>wsl --status
默认版本:2

适用于 Linux 的 Windows 子系统最后更新于 2022/4/15
适用于 Linux 的 Windows 子系统内核可以使用“wsl --update”手动更新,但由于你的系统设置,无法进行自动更新。
 若要接收自动内核更新,请启用 Windows 更新设置:“在更新 Windows 时接收其他 Microsoft 产品的更新”。
 有关详细信息,请访问https://aka.ms/wsl2kernel。

内核版本: 5.10.16

五、问题汇总

问题一:执行命令wsl,提示“系统找不到指定的路径。”

出现错误:如果出现“系统找不到指定的文件”的提示,是因为之前安装的没有卸载的原因。
方法一:使用命令卸载和安装指定发现版本

  • 命令:wsl -l -v //查看安装的发行版本和默认版本信息
  • 命令:wsl --unregister Ubuntu-18.04 //卸载名为“Ubuntu-18.04”的发行版本
  • 使用powerShell执行安装命令:
    • Add-AppxPackage C:\wslApps\Ubuntu_1804.2019.522.0_x64.appx
    • Add-AppxPackage C:\wslApps\Ubuntu_2204.1.7.0_x64.appx

注:如果安装完后执行 wsl -l -v 提示“没有可用发行版本”,可用方法二安装

方法二:解压 *.appx 文件安装

  • 将文件Ubuntu_1804.2019.522.0_x64.appx后缀改为.zip
  • 解压Ubuntu_1804.2019.522.0_x64.zip文件
  • 直接双击运行.\Ubuntu_1804.2019.522.0_x64\ubuntu1804.exe文件
  • 首次运行需要创建用户名、密码(都填test)
  • 再次执行wsl,可以顺利进入ubunt系统
  • 执行exist可退出子系统

问题二:如果出现参考的对象类型不支持尝试的操作,请重置下网络

  • 执行命令: net winsock reset
  • 重启电脑

问题三:运行一段时间后系统无法进入,执行wsl命令无响应

原因:子系统运行依赖的服务LxssManager停止工作,导致wsl命令无响应。
解决方法是重启LXSSManager服务,但是直接在服务管理器(service.msc)中操作该服务提示“访问拒绝”。可以通过用以下方法找到并结束LxssManager服务宿主进程svchost.exe的PID结束相关进程,之后刷新服务,点击“启动”重新启动该服务。

  • 方法1:

    • tasklist /svc /fi “imagename eq svchost.exe”
    • 搜索 LxssManager 并获取 PID
    • 以管理员身份运行任务管理器,在详细信息选项卡中,搜索包含 PID 的 svchost.exe
    • 右键单击它并选择“结束进程树”。
    • 在服务管理器中找到LxssManager,点击启动。(如果没有启动按钮,可以右键刷新下)
    • 执行:wsl --status 命令正常执行。(此时服务管理器中LXSSManager状态为运行中)
  • 方法2:

    • tasklist /svc /fi “services eq LxssManager” //查进程ID
    • wmic process where processid=29984 delete //结束指定PID进程
    • 在服务管理器中启动LxssManager服务
    • wsl --status //命令正常执行
C:\Users\用户名>tasklist /svc /fi "services eq LxssManager"

映像名称                       PID 服务
========================= ======== ============================================
svchost.exe                  29984 LxssManager

C:\Users\用户名>tasklist /svc /fi "services eq LxssManager"

映像名称                       PID 服务
========================= ======== ============================================
svchost.exe                  29984 LxssManager

C:\Users\用户名>wmic process where processid=29984 delete
删除实例 \\DESKTOP-2VBQPJK\ROOT\CIMV2:Win32_Process.Handle="29984"
实例删除成功。

C:\Users\用户名>wsl --status
默认分发:Ubuntu-18.04
默认版本:2

适用于 Linux 的 Windows 子系统最后更新于 2023/3/7
适用于 Linux 的 Windows 子系统内核可以使用“wsl --update”手动更新,但由于你的系统设置,无法进行自动更新。
 若要接收自动内核更新,请启用 Windows 更新设置:“在更新 Windows 时接收其他 Microsoft 产品的更新”。
 有关详细信息,请访问https://aka.ms/wsl2kernel。

内核版本: 5.10.16

C:\Users\用户名>
  • 9
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Windows子系统WSL)是微软开发的一种工具,旨在在Windows操作系统上提供对Linux环境的支持。将WSL与LxRunOffline-v3.5.0-11-gfdab71a-msvc进行结合使用,可以更加方便地管理和运行Linux发行版。 LxRunOffline是一种开源工具,允许用户在Windows系统上安装和管理Linux发行版。V3.5.0-11-gfdab71a-msvc版本为最新版本,已经在性能、兼容性和稳定性方面做出了明显的改进。这个版本还在一些方面进行了更新,例如优化了PSRP支持,修复了网络支持中的一些漏洞。总的来说,使用这个版本的LxRunOffline可以更加不受干扰地使用WSL,从而进一步提高Linux在Windows上的可用性和使用体验。 可以通过从LxRunOffline的官方网站或源代码库下载并安装最新版进行更新。例如,可以使用命令提示符或PowerShell来运行安装脚本,这些脚本会自动获取最新版本并执行安装过程。在完成安装后,您就可以使用LxRunOffline-v3.5.0-11-gfdab71a-msvc版本管理并运行Linux发行版了。 总之,LxRunOffline-v3.5.0-11-gfdab71a-msvc版本是WSL用户的重要工具,它能帮助用户更加方便地管理和运行他们喜欢的Linux发行版,并提供更加愉悦的使用体验。 ### 回答2: Windows子系统WSL)是一项由微软开发的技术,它允许在Windows系统上运行Linux操作系统。这是一项非常强大的功能,可以帮助用户在Windows环境中运行Linux应用程序,无需双重启动。WSL由lxrunoffline(v3.5.0-11-gfdab71a-msvc)程序来管理。这是一种管理WSL实例的实用工具,可以启动、停止、重新安装、卸载和备份WSL实例。此工具也可以升级WSL实例,然后重新安装WSL操作系统的不同版本。该工具还提供了一些简单而有用的命令,例如列出WSL实例、列出可用的WSL发行版、列出已安装的WSL实例的成分等。此外,lxrunoffline还支持在WSL环境中其他Linux发行版的使用。它允许用户添加其他发行版或从WSL环境中删除已安装的发行版。总的来说,lxrunoffline是一种非常强大的工具,可以帮助用户管理他们的WSL实例,并帮助他们轻松地使用WSL中的Linux环境。 ### 回答3: Windows子系统Windows Subsystem for Linux,简称WSL)是微软公司在Windows 10操作系统中加入的强大功能,它能够在Windows系统中运行Linux操作系统,并且提供完整的Linux shell体验。 WSL的核心组件是一个名为lxrunoffline的软件,它能够在Windows系统上创建Linux发行版的文件系统,并与Windows系统无缝运行。而lxrunoffline-v3.5.0-11-gfdab71a-msvc是lxrunoffline的一个版本,这个版本修复了之前版本的一些漏洞,增强了它的性能和稳定性,同时还为新版的Linux发行版提供了更好的支持。 使用lxrunoffline-v3.5.0-11-gfdab71a-msvc,用户可以下载和安装各种不同的Linux发行版,比如Ubuntu、Debian、Kali Linux等等,而不需要在系统中安装复杂的虚拟机或容器软件。这使得开发者和管理员能够更方便地进行代码编译、测试和运行,同时也能够更好地管理自己的系统资源。 总的来说,lxrunoffline-v3.5.0-11-gfdab71a-msvc是WSL的一个重要组成部分,它为Windows系统用户提供了一个完整的Linux环境,让用户能够轻松访问和使用Linux命令行工具和应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值