温馨提示×

Ubuntu VNC如何配置分辨率

小樊
42
2025-11-30 13:39:47
栏目: 智能运维

Ubuntu VNC 分辨率配置指南

一、快速设置

  • 使用 TigerVNC / RealVNC / x11vnc 启动时直接指定分辨率(会话级生效):
    • 示例:vncserver :1 -geometry 1920x1080
    • 如需同时设置色深:vncserver :1 -geometry 1920x1080 -depth 24
    • 仅本次生效,重连后保持该分辨率。若需固定默认分辨率,见下文“持久化”。

二、图形会话内用 xrandr 调整(桌面已启动后)

  • 查看当前输出与分辨率:xrandr
  • 生成所需分辨率的 Modeline(示例为 1920×1080@60Hz):cvt 1920 1080 60
  • 新建并添加模式(输出名以 xrandr 输出为准,如 Virtual1VGA-1 等):
    • xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
    • xrandr --addmode Virtual1 "1920x1080_60.00"
  • 应用分辨率:xrandr -s 1920x1080
  • 无显示器或虚拟环境仅有极小桌面时,可先扩展帧缓冲:xrandr --fb 1920x1080,再按上步添加模式与应用。以上为会话级设置,重启后会丢失。

三、持久化配置

  • 方案一(推荐,系统级):创建 Xorg 虚拟屏幕,让系统始终提供目标分辨率(对无显示器/虚拟机尤佳)
    • 新建或编辑:sudo vim /etc/X11/xorg.conf
    • 写入示例(将 1920 1080 替换为你的目标分辨率):
      Section "Device"
          Identifier "Configured Video Device"
      EndSection
      Section "Monitor"
          Identifier "Configured Monitor"
      EndSection
      Section "Screen"
          Identifier "Default Screen"
          Monitor "Configured Monitor"
          Device "Configured Video Device"
          SubSection "Display"
              Depth 24
              Virtual 1920 1080
          EndSubSection
      EndSection
      
    • 重启后生效,VNC 会话将可直接选择或自动匹配该分辨率。
  • 方案二(会话级脚本):将 xrandr --newmode--addmode 写入系统启动脚本(如 /etc/profile 或桌面会话自启脚本),以在登录后自动注入所需模式。注意不同发行版/桌面环境自启方式略有差异,示例见下文“常见问题”。

四、常见问题与排查

  • 无显示器或虚拟机仅显示 800×600/640×480:使用 xrandr --fb 扩展帧缓冲,或创建 /etc/X11/xorg.confVirtual 项以固定虚拟分辨率;虚拟机同时建议在宿主机/虚拟机工具中开启显示适配(如安装增强功能/工具)。
  • 提示分辨率不可用:先用 cvt 生成 Modeline,再用 xrandr --newmode/–addmode 注入,随后 xrandr -s 应用;输出名必须与 xrandr 显示的一致(如 Virtual1VGA-1)。
  • 已连接 VNC 会话但设置不生效:部分桌面环境(如 Unity)对 -geometry 不敏感,优先在会话内用 xrandr 切换/添加模式;必要时重启会话或 VNC 服务。
  • 需要固定 VNC 启动分辨率:在 vncserver 启动时加 -geometry 1920x1080;若希望默认永久生效,可修改启动器或封装脚本中的默认几何参数(不同 VNC 套件位置不同)。

0