序言
由于学习的需求,我需要在 WSL 中安装 GUI 图形界面, 在此文中记录一下安装过程及踩过的坑。
这个学习需求是因为我正在看 《CPython Internals》。
这本书是讲 Python 源代码的, 但是我发现书中使用 CLion 编译代码的环境无法创建成功, 作者使用的 Mac OS,我想使用 Windows 10 加上 Cygwin 来试一下, 但是这条路不通, 因此来试试 Linux 中是否正常。 当然我想应该是可以的,书中的截图应该就是 Linux 中的,希望一切正常。
升级 WSL
默认都会安装 WSL 子系统。文章中的命令需要在管理员权限下执行, 防止出现其他错误。
我一直以为自己电脑中的 Linux 子系统是 WSL2, 实际上是 1。那我们就先升级 WSL 子系统。
❯ wsl --list --verbose
NAME STATE VERSION
* kali-linux Stopped 1
通过这条命令知道子系统实际的版本是 1 。 GUI 图形界面需要的条件如下 :
- 对于 x64 系统:版本 1903 或更高版本,采用 内部版本 18362 或更高版本。
- 对于 ARM64 系统:版本 2004 或更高版本,采用 内部版本 19041 或更高版本。
- 低于 18362 的版本不支持 WSL 2。 使用 Windows Update 助手更新 Windows 版本。
来自: https://docs.microsoft.com/zh-cn/windows/wsl/install-win10
接下来管理员权限执行
wsl --set-version kali-linux 2
注意,命令中的 “kali-linux”是你自己的子系统类型, 我安装的是 kali-linux , 所以填写这个类型。
如果执行报错,错误信息中包含了虚拟化 (Virtual Machine)相关的, 可以尝试执行此命令,然后重启(由于疏忽忘记截图):
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
重启之后继续执行 wsl --set-version kali-linux 2
应该会让你升级 wslkernel 。
那么可以通过此文 https://docs.microsoft.com/zh-cn/windows/wsl/install-win10 中的步骤4下载升级包。
安装完成后直接执行 wsl --set-version kali-linux 2
命令来转换 wsl 子系统。
这个过程比较耗时,耐心等待即可。
然后可以直接将 WSL2 设为默认版本: wsl --set-default-version 2
GPU 驱动安装
升级完成了,还需要安装 GPU 驱动程序,下载链接: https://developer.nvidia.com/cuda/wsl (nvidia 显卡)
下载安装即可,需要注意的是,如果使用的不是独立显卡,需要安装 CPU 集成显卡相关驱动,详细可以看官方文档: https://docs.microsoft.com/zh-cn/windows/wsl/tutorials/gui-apps
如果启动 WSL 子系统出现如下错误:
参考的对象类型不支持尝试的操作。
[已退出进程,代码为 4294967295]
可通过执行此命令并重启解决: netsh winsock reset
(管理员权限执行)
验证 GUI
上述已经完成了 WSL 子系统的升级及显卡驱动的安装, 我们需要验证一下 GUI 是否安装成功。可安装官方文档中的 gedit。
如果下载速度太慢,可以把官方软件源修改为 aliyun 的镜像源,参考链接: https://developer.aliyun.com/mirror/kali ,修改软件源之后记得更新一下本地 cache 。
再安装 x server: https://sourceforge.net/projects/vcxsrv
其余步骤参考: https://blog.csdn.net/Alisebeast/article/details/106680267
出现严重问题,无法进行下去,没有找到解决办法:
# gedit
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
(gedit:77): GLib-GIO-ERROR **: 23:10:15.649: No GSettings schemas are installed on the system
Trace/breakpoint trap
先这样吧,我以为很容易就能配好呢,坑太多了,不知道怎么解决
结语
希望能找到解决办法,否则我只能在虚拟机中搭建环境了
如有错误,敬请指出,感谢指正! — 2021-08-11 23:16:58
最新评论
这个软件有bug的,客户端windows有些键不能用如逗号、句号
没有收到邮件通知
我的评论通知貌似坏掉了,定位一下问题
测试一下重新部署后的邮件功能
居然看到自己公司的MIB库,诚惶诚恐
那可能是RobotFramework-ride的版本问题。我装的1.7.4.2,有这个限制。我有空再尝试下旧版本吧,感谢回复。
你好!我在python2.7中安装RobotFramework-ride的时候提示wxPython的版本最高是2.18.12,用pip下载的wxPython版本是4.10,而且我在那个路径下没有找到2
真的太好了,太感谢了,在bilibili和CSDN上都找遍了,终于在你这里找到了