在 Linux 中动态更改 VNC 会话的分辨率时出错

在 Linux 中动态更改 VNC 会话的分辨率时出错

我通过 RealVNC 从我的笔记本电脑(Windows 7 机器)连接到我的工作站,这是一个 Linux 机器(Red Hat Linux)。当我工作时,我使用扩展坞,它的分辨率相当高,而我的笔记本电脑的分辨率较低。因此,当我在显示器和笔记本电脑之间切换时,每次都需要使用正确的几何形状重新启动 vncserver。在互联网上搜索后,我找到了关于这个答案stackoverflow.com 上描述了如何动态分配不同的几何图形。这里的关键是randr启动 vncserver 时的参数。所以我做的第一件事是确保 Xrandr 安装在我的 Linux 机器上:

which xrandr 

输出结果如下:

 /usr/bin/xrandr

接下来我尝试使用以下命令运行服务器:

 vncserver -geometry 1600x1200 -randr 1600x1200,1440x900,1024x768

但服务器没有启动。接下来,我仅使用参数启动了-geometry服务器没有randr给出的论点第二个答案

接下来,我从终端发出了 xrandr 命令并收到以下错误:

Xlib:  extension "RANDR" missing on display ":1.0".

上述错误是什么意思?我这里遗漏了什么?

答案1

在我的 Ubuntu 服务器上,使用该参数也无法正常工作-randr,但使用多次该-geometry参数后效果很好。试试看。

因此你可以输入:

vncserver -geometry 1600x1200 -geometry 1440x900 -geometry 1024x768

然后,您使用xrandr命令来更改分辨率。

答案2

我遇到了类似的问题。这给了我同样的错误:

vncconfig -set RandR="1855x1055"

解决方案:

  1. 打开 VNC 服务器‘选项’对话框
  2. 转至“专家”标签
  3. 找到‘RandR’参数并根据需要设置值!

查看“选项”屏幕

单击“应用”后,你将能够使用以下方式调整屏幕大小

xrandr -s 1855x1055

这对我有用,我希望它会有所帮助!

答案3

我猜,您的 VNC 版本不支持RANDR。您确定它受支持吗?

相关内容