通过vncserver命令的-geometry参数直接指定分辨率,适用于临时调整或测试。
操作步骤:
vncserver :1 -geometry 1280x1024
其中:1表示VNC显示编号(可自定义,需避免与现有编号冲突),1280x1024为目标分辨率。vncserver -kill :1),再重新启动并指定新分辨率。通过修改VNC服务配置文件,实现系统级默认分辨率设置,适用于长期固定使用。
操作步骤:
/etc/sysconfig/vncservers或/etc/tigervnc/vncserver.conf):sudo vi /etc/sysconfig/vncservers
VNCSERVERARGS参数(如VNCSERVERARGS[1]),添加或修改-geometry选项(如1920x1080):VNCSERVERS="1:root" # 指定用户及显示编号(:1对应root用户)
VNCSERVERARGS[1]="-geometry 1920x1080 -depth 24" # 设置分辨率及色彩深度(可选)
sudo systemctl restart vncserver@:1.service # 替换:1为实际显示编号
注意:若使用TigerVNC,部分系统可能需修改/etc/tigervnc/vncserver.conf文件,添加geometry=1920x1080参数。
若默认分辨率列表中没有所需尺寸(如1600x900),可通过xrandr命令手动添加自定义分辨率。
操作步骤:
VNC-0或VGA-1):xrandr
输出示例:VNC-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
cvt命令生成自定义分辨率的模型ine(以1600x900@60Hz为例):cvt 1600 900 60
输出示例:# 1600x900 59.95 Hz (CVT 1.44M9) hsync: 55.99 kHz; pclk: 118.25 MHz
Modeline "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
xrandr --addmode VNC-0 "1600x900_60.00" # 将模式添加到VNC设备
xrandr --output VNC-0 --mode "1600x900_60.00"
xrandr命令添加到~/.vnc/xstartup文件末尾(重启VNC后生效)。cp /etc/sysconfig/vncservers /etc/sysconfig/vncservers.bak)。~/.vnc/xstartup文件是否启用了正确的桌面环境(如gnome-session &或startkde &),并确保桌面环境支持所设分辨率。