在 Windows WSL 版本的 Ubuntu 上使用 Gnome 桌面

在 Windows WSL 版本的 Ubuntu 上使用 Gnome 桌面

对于 Windows 10 Pro 64 位,是否有办法在 Windows(从 MS Store 下载的 WSL)版本的 Ubuntu 中安装 Gnome 桌面?还是我需要使用其他发行版?

答案1

首先,您必须为 Windows 安装“X Window System”端口。我建议您使用 VcXsrv。完成后,您应该确保安装了 gnome,因为据我所知,Ubuntu 的 wsl 版本不附带任何 gui 应用程序,包括 gnome,您可以通过sudo apt install gnome gnome-session在终端中输入来完成此操作。

如果您尚未安装这些软件包,请安装它们。

打开 Xlaunch(您之前在 Windows 主机上安装的)并选择“一个大窗口”或“全屏”,并将 -1 替换为 0。

然后只需按几次回车键,直到打开一个大黑窗口。转到 wsl 终端并输入:DISPLAY=:0 XDG_SESSION_TYPE=x11 gnome-session。稍等片刻,您应该能够在 xlaunch 中看到桌面。

答案2

已提供最佳修复方案这里


总结:

nano ~/.bashrc

将其粘贴到最后

export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0
export LIBGL_ALWAYS_INDIRECT=1

然后执行:

git clone https://github.com/DamionGans/ubuntu-wsl2-systemd-script.git
cd ubuntu-wsl2-systemd-script/
bash ubuntu-wsl2-systemd-script.sh

然后重启 WSL

完整的 Windows 10 + Ubuntu + Gnome + VcXsrv 说明

  1. 在控制面板 > 程序 > 打开或关闭 Windows 功能中:启用虚拟化、两个 Hyper-V 复选框(如果存在)和适用于 Linux 的 Windows 子系统
  2. 重启电脑并进入 BIOS;在 BIOS 中确保虚拟化已启用。(请谷歌搜索适合您电脑型号的更具体说明)
  3. 通过 Windows 商店安装 Ubuntu(20.04)
  4. 安装 VcXsrv
  5. (在任何时候)打开 VcXsrv;选择单个窗口 > 下一步 > 不启动客户端 > 下一步 > 启用第三个复选框 [禁用访问控制] > 下一步 > 完成
  6. 在 Windows 命令提示符中执行:wsl --set-default-version 2
  7. 通过wsl在命令提示符/Windows 终端中执行来启动 WSL;或者从开始菜单打开“Ubuntu”
  8. 在 WSL 中:
  9. (完成默认用户和密码对话框)
  10. sudo apt update
  11. sudo apt upgrade
  12. sudo apt install ubuntu-gnome-desktop
  13. 应用上述 gnome 修复说明
  14. 在 Windows 中执行:wsl --shutdown
  15. 并重启 WSL
  16. 在 wsl 中执行:gnome-session

恭喜。VcXsrv 现在将显示为运行虚拟 Ubuntu 系统的 gnome GUI 的监视器。


我建议重新配置一些键盘快捷键,例如 alt-tab,这样您就不会同时控制窗口和 WSL。

请注意,您也可以在 VcXsrv 中运行一些 GUI 应用程序,而无需先启动 gnome-session。(尝试gedit从 wsl 命令行执行。)

答案3

2023 年,微软在 WSL 2 上全面支持此功能。请参阅这个帖子有关详细信息。假设您正在运行最新版本的 WSL 2,您可以简单地安装 Gimp,如下所示:

sudo apt install gimp -y

相关内容