Windows11 上安装启动DevStation WSL镜像

Windows11 上安装启动DevStation WSL镜像

简介

在Windows上进行开发,尤其是需要Linux环境时,我们曾长期面临两难选择:要么使用笨重、消耗资源的传统虚拟机,要么忍受繁琐的双系统切换。而Windows Subsystem for Linux(WSL)的诞生,彻底改变了这一局面。它并非简单的模拟器或臃肿的虚拟化方案,而是一个深度集成于现代Windows系统的革命性兼容层。与虚拟机相比,WSL拥有颠覆性的优势:它具备近乎原生的性能与秒级启动速度,让开发环境即开即用;实现了Windows与Linux间的无缝融合,文件互通、网络直连、命令行整合,让你能同时驾驭两大生态的工具;并且极大地节省了系统资源,轻量到几乎感觉不到它的存在。正因如此,WSL已成为无数开发者、数据科学家和学生在Windows上高效拥抱Linux生态的首选桥梁。本文将介绍如何在Windows11上安装启动DevStation WSL镜像。文档提供两种安装方式:微软商店下载安装压缩包方式安装

1 微软商店下载安装:DevStation WSL镜像已上线至微软商店,可直接通过商店获取镜像安装。操作步骤如下:下载DevStation WSL启动镜像进入桌面环境

2 压缩包方式安装:除上线至微软商店外,DevStation WSL也上线至openEuler官网,通过官网获取到压缩包安装。安装步骤如下:获取WSL压缩包注册导入证书启动镜像进入桌面环境

前置条件

开始安装 WSL 前,我们需要为 Windows 做好“准备活动”,以确保系统安装完成后能正常启动。

1: 系统需要Windows11(WSL仅支持Windows11系统)

2: Windows系统必须开启“虚拟机平台”(由于Windows11 版本不一致,部分版本该选项为英文 “Virtual Machine Platform”,如下图所示)和“适用于Linux的Windows子系统”两个配置。开启后需重启计算机生效。(设置路径:控制面板→程序→程序和功能(启用或关闭Windows功能))

3 更新WSL,确保WSL内核为新版本(PS:确保上述两个配置开启,并重启电脑后更新,否则系统可能识别不了wsl命令)

wsl --update 

通过微软商店安装

1 下载DevStation WSL

打开微软商店,搜索 openEuler DevStation,找到软件包并下载,如下图所示

2 启动镜像

安装完成后点击打开(首次打开会先安装,过程大概1分钟),会打开Windows PowerShell窗口启动WSL,按提示创建完用户名和密码后即可进入系统。

3 进入桌面环境

进入系统启动图形化服务大概2秒后即可进入桌面

sudo systemctl start graphical.target

通过压缩包安装

1 获取WSL压缩包

进入openEuler官网,在下载专栏选择对应版本的WSL压缩包进行下载。下载完成后解压ZIP包至本地

2 注册安全证书

点击解压后的文件夹进入至xxx_Test目录下,如下图

双击图中“.cer”文件,依次点击选择:安装证书本地计算机将所有的证书都放入下列存储(P)受信任人。流程依次如下:

点击"完成"即完成证书的导入

3 启动镜像

在xxx_Test目录下双击“.appxbundle”文件

弹出的界面点击"安装",由于笔者已经电脑已经安装上,故以下截图展示选项为“重新安装”和“启动”(PS:后续启动WSL都是在xxx_Test目录下双击".appxbundle"文件)

按提示创建完用户名和密码后即可进入系统。

4 进入桌面环境

进入桌面环境跟微软商店安装方式一样,此处不再赘述。

常见问题及解答

1 安装过程中可能出现类似报错:WslRegisterDistribution failed with error: 0x8007019e;The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again。如图所示


解决:该问题是由于环境"虚拟机平台"和"适用于Linux的Windows子系统"选项没开启,参照文章的前置条件部分2 3条开启并更新wsl。

2 启动过程中报错类似:“适用于 Linux 的 Windows 子系统必须跟新到最新版本才能继续。 可通过运行 “wsl.exe --update” 进行更新 ”


解决方案:通过PowerShell命令行终端执行"wsl --update" 更新wsl内核
3 在进入桌面环境时报错类似:"System has not been booted with systemd as init system (PID 1). Can’t operate.
Failed to connect to bus: Host is down " 错误,如图

问题分析:极大可能是由于WSL配置文件/etc/wsl.conf 文件中[boot]选项下systemd的值为“false”,如下图所示。

解决方案:将systemd选项的值改为“true”(需要管理员权限 “sudo vi /etc/wsl.conf”),保存关闭WSL之后再重启大概率能解决问题。(PS:如何关闭WSL:新开一个PowerShell窗口,在窗口内执行"wsl --shutdown")