Ubuntu 下 VNC 闪退(连接后立刻断开 / 黑屏后退出)是非常常见的问题,通常不是 VNC 本身坏了,而是桌面环境或配置不匹配。下面按「最常见原因 → 对应解决办法」给你梳理。
Ubuntu 18.04+ 默认使用 GNOME + Wayland,而大多数 VNC(TightVNC / TigerVNC / RealVNC)不支持 Wayland。
现象
gnome-session / Wayland 相关错误解决办法
✅ 使用 Xorg 登录
登录界面 → 右上角 → 选择 Ubuntu on Xorg
或强制禁用 Wayland:
sudo nano /etc/gdm3/custom.conf
修改:
WaylandEnable=false
重启:
sudo systemctl restart gdm3
很多人直接启动 VNC,但没告诉它用哪个桌面。
解决方式(推荐)
编辑 ~/.vnc/xstartup:
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /usr/bin/gnome-session
sudo apt install xfce4 xfce4-goodies
xstartup:
#!/bin/bash
startxfce4 &
然后:
chmod +x ~/.vnc/xstartup
旧 VNC 没关,新连接直接闪退。
vncserver -kill :1
vncserver :1
常见于云服务器(无显卡)
export XKL_XMODMAP_DISABLE=1
或加参数:
vncserver -geometry 1280x720 -depth 24
Ubuntu 自带 vino,和 RealVNC 冲突。
sudo apt remove vino
TigerVNC + XFCE
sudo apt install tigervnc-standalone-server xfce4
xstartup:
startxfce4 &
稳定、不闪退、资源占用小。
你可以对照看看:
如果你愿意,可以告诉我:
~/.vnc/*.log)我可以直接帮你精准改配置。