当前位置: 首页 > news >正文

使用 VcXsrv 在 Windows 10 上运行 Ubuntu 图形界面

VcXsrv 是一款用于 Windows 的开源 X 服务器,它允许在 Windows 系统上显示 Linux 的图形应用程序。当在 Windows 10 上安装并正确配置 VcXsrv 后,通过设置 WSL2 中的DISPLAY环境变量,使其指向运行 VcXsrv 的 Windows 主机的 IP 地址,就可以将 WSL2 中运行的图形应用程序的界面显示在 Windows 桌面上。因此,此时在 WSL2 中运行 gedit,会通过 VcXsrv 在 Windows 上弹出 gedit 自身的图形界面,而不是 Windows 的记事本。

第一步从如下地址下载VcXsrv

VcXsrv Windows X Server download | SourceForge.net

vcxsrv-64.1.20.14.0.installer.exe

第二步安装VcXsrv

第三步运行VcXsrv

安装完成后从桌面图标运行VcXsrv,弹出界面

Display number: 0设置为0

引申话题:为什么 VcXsrv 要设为 0

:0 表示:

  • 连接到本地(Unix Domain Socket)

  • 使用 Display Number 0

WSL2 的默认配置
在 WSL2 中,/etc/resolv.conf 的 nameserver 是 Windows 主机的虚拟 IP(如 172.x.x.x),而 DISPLAY 环境变量通常设置为:

export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf):0
  • 这里的 :0 需要与 VcXsrv 的 Display Number 一致,否则无法连接。

  • 兼容性问题:大多数 Linux GUI 应用默认尝试连接 :0设为 0 可避免额外配置

勾选(允许 WSL 连接)

下面默认完成后在任务栏显示如下:

第四步在 WSL2 中配置 DISPLAY

在 Ubuntu 终端运行:

echo "export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf):0" >> ~/.bashrc
echo "export LIBGL_ALWAYS_INDIRECT=1" >> ~/.bashrc
source ~/.bashrc

第五步测试GUI依次执行如下命令:
 

sudo apt update
sudo apt install gedit -y
gedit

运行最后的gedit后弹出文档编辑界面,如下图:

这个就是刚才输入的gedit程序,关于gedit如下:

gedit 文本编辑器的图形界面。

第五步再安装一个计算器到wsl2的ubuntu中,执行如下命令:
 

sudo apt install gnome-calculator -y

然后再在wsl2中输入看看效果,运行命令:gnome-calculator

受WSL2 的图形限制会报错和Zink 报错,直接忽略即可,等一会后出现如下所示的界面

这样我就可以通过wsl2中进行但应用的界面化调用了。

我们再安装个firefox看看。

运行文件管理器:

显示如下:

总结:Windows 10 访问 Ubuntu GUI 的最佳方案

运行简单GUI工具的话,用vsxsrv+单个应用(mutil多窗口模式)就足够了。

最后需要注意的是,前面的操作都是在root账户下的操作,如果切换普通账号不能不能启动应用界面的话,需要从root账号切换到普通账号,然后依次执行下面的命令:
在普通用户的 ~/.bashrc 或 ~/.profile 中添加:

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

然后生效配置:

source ~/.bashrc

这样就可以用普通账号启动相应的软件了。

下面是一些常用的命令,如果没有安装的话,得先安装应用。

nautilus                            # 文件管理器
gnome-terminal                      # 终端
gnome-system-monitor                # 任务管理器
update-manager                      # 更新管理器
software-properties-gtk             # 软件和更新
nm-connection-editor                # 网络设置
gedit                               # 文本编辑器
gnome-calculator                    # 计算器
gnome-software                      # 软件中心
gnome-disks                         # 磁盘管理工具
gnome-control-center                # 系统设置
gnome-control-center datetime       # 时间和日期设置
gnome-control-center power          # 电源设置
gnome-control-center display        # 显示设置
gnome-control-center sound          # 声音设置
gnome-control-center user-accounts  # 用户账户设置
gnome-control-center bluetooth      # 蓝牙设置
gnome-control-center keyboard       # 键盘设置
gnome-control-center mouse          # 鼠标和触摸板设置
gnome-control-center region         # 区域和语言设置


http://www.mrgr.cn/news/98057.html

相关文章:

  • 第八天 开始Unity Shader的学习之Blinn-Phong光照模型
  • Java 集合框架面经
  • 链式多分支规则树模型的应用
  • Harmony实战之简易计算器
  • 图像颜色空间对比(Opencv)
  • C++动态分配内存知识点!
  • (自用)蓝桥杯准备(需要写的基础)
  • 基于数字水印的公文流转系统设计与实现
  • 【图像分类】【深度学习】图像分类评价指标
  • 订阅不到topic排查方式
  • ch07课堂参考代码
  • SDC命令详解:使用集合(Collection)而不是字符串(String)/列表(List)作为命令参数
  • 责任链设计模式(单例+多例)
  • C++算法之代码随想录(链表)——基础知识
  • mujoco graspnet 仿真项目的复现记录
  • Python学习笔记(二)(字符串)
  • 【后端开发】初识Spring IoC与SpringDI、图书管理系统
  • 力扣热题100刷题day63|49.字母异位词分组
  • C++指针(四)万字图文详解!
  • 嵌入式MCU常用模块