什么是X11-forwarding?怎么使用?

什么是X11-forwarding?怎么使用?,第1张

在使用 MobaXterm 连接远程服务器的时候遇见了 X11-forwarding ,后面跟着一个亮眼的 红叉 ,如下图。强迫症看见它十分不爽,于是想办法干掉它。

X11 中的 X 指的就是 X 协议;11 指的是采用 X 协议的第 11 个版本。

X11-forwarding 说的简单明白点就是:可以通过一个支持 X Server 的 SSH 客户端,例如:MobaXterm。 连接到远程 Linux 服务器,可以在本地通过 MobaXterm 运行 *** 作一个远程 Linux 服务器上有图形界面程序

Linux 本身是没有图形化界面的,所谓的图形化界面系统只不过中 Linux 下的应用程序。这一点和 Windows 不一样。Windows 从 Windows 95 开始,图形界面就直接在系统内核中实现了,是 *** 作系统不可或缺的一部分。Linux 的图形化界面,底层都是基于 X 协议。

X 协议由 X server 和 X client 组成:

X server 管理主机上与显示相关的硬件设置(如显卡、硬盘、鼠标等),它负责屏幕画面的绘制与显示,以及将输入设置(如键盘、鼠标)的动作告知 X client。

X client (即 X 应用程序) 则主要负责事件的处理(即程序的逻辑)。

举个例子,如果用户点击了鼠标左键,因为鼠标归 X server 管理,于是 X server 就捕捉到了鼠标点击这个动作,然后它将这个动作告诉 X client,因为 X client 负责程序逻辑,于是 X client 就根据程序预先设定的逻辑(例如画一个圆),告诉 X server 说:“请在鼠标点击的位置,画一个圆”。最后,X server 就响应 X client 的请求,在鼠标点击的位置,绘制并显示出一个圆。

这一堆安装的,实际上是X Client。其中最后的 xclock 是用来测试X11Forwarding功能的。

运行以下命令测试效果,正常情况下会出现一个时钟界面。

报错如下:

[xcb] Unknown request in queue while dequeuing

[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called

[xcb] Aborting, sorry about that.

poll_for_event:

解决:

链接库,在pro文件中

然后

参考文章: Opencv 多线程显示错误 [xcb] Unknown request in queue while dequeuing [xcb] Most likely this is a multi-thre - 从小白做起 - 博客园 (cnblogs.com)

报错:

Failed to load module "canberra-gtk-module"


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8634129.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-19
下一篇 2023-04-19

发表评论

登录后才能评论

评论列表(0条)

保存