我通过 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"
解决方案:
- 打开 VNC 服务器‘选项’对话框
- 转至“专家”标签
- 找到‘RandR’参数并根据需要设置值!
单击“应用”后,你将能够使用以下方式调整屏幕大小
xrandr -s 1855x1055
这对我有用,我希望它会有所帮助!
答案3
我猜,您的 VNC 版本不支持RANDR
。您确定它受支持吗?