使用背景:
由于以联网方式来安装wsl经常出现各种网络问题和其他没有详细错误信息只有错误代码的奇葩问题,能否顺利安装真的凭运气,而且时间上也难以保证。
这里我讲解一下如何通过预先下载好程序包的方式,在windows server 2022(版本是datacenter, 版本号为20348.1129)以离线的方式安装WSL2功能。
具体操作步骤:
1.启用 虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
2. 再安装wsl内核功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
完成步骤1和2后,重启计算机!!!
3. 安装Linux 内核更新包
下载链接为:wsl_update_x64.msi,下载完成后直接双击安装即可
备注:如果这一步漏做了,在之后的步骤ubuntu安装初始化时可能会报这样的错误:WslRegisterDistribution failed with error: 0x800701bc
4. 安装Microsoft Visual C++ UWP Desktop Runtime Package
下载链接为:Microsoft.VCLibs.x64.14.00.Desktop.appx
安装方式:打开powershell,切换到该appx所在目录,执行以下命令(Add-AppxPackage后面的参数改为实际的程序包文件名)即可:
Add-AppxPackage .\Microsoft.VCLibs.x64.14.00.Desktop.appx
备注:该程序包是下一步中ubuntu分发包的依赖包,所以必需要提前安装,否则会报如下错误:
Add-AppxPackage : 部署失败,原因是 HRESULT: 0x80073CF3, 包无法进行更新、相关性或冲突验证。Windows 无法安装程序包 CanonicalGroupLimited.Ubuntu_2204.1.7.0_x64__79rhkp1fndgsc,因为此程序包依赖于一个找不到的框架。 请随要安装的此程序包一起提供由“CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US”发布 的框架“Microsoft.VCLibs.140.00.UWPDesktop”
具体要求错误如下图所示

5. 下载具体的linux分发包,这里以ubuntu22.04为例
下载链接为:Ubuntu 22.04 LTS
安装方式:打开powershell,切换到该分发包所在目录,执行以下命令( Add-AppxPackage后面的参数改为实际的程序包文件名)即可:
Add-AppxPackage .\Ubuntu2204-221101.AppxBundle

备注:其他版本的linux下载链接可从这里找到
6.ubuntu安装初始化
从开始菜单找到最近新增的ubuntu项,然后按提示设置用户名和密码即可(这一步不能断网,否则点了ubuntu项目可能会没有反应),如下图所示:


7. 查看已经安装的linux发行版
上述命令完成并无出错提示后,可通过wsl -l -v命令查看已安装的linux版本,如下图所示:

参考:
旧版 WSL 的手动安装步骤 | Microsoft Learn
How to manually install WSL2 on a Windows 10 Virtual Machine



4209

被折叠的 条评论
为什么被折叠?



