Ubuntu 下 VNC 黑屏是比较常见的问题,通常不是“系统坏了”,而是会话/桌面环境没起来。下面按「最常见 → 较少见」给你梳理原因和对应解决办法。
很多 VNC Server(如 tightvnc、tigervnc)默认 不会自动启动 GNOME/KDE,只启动了一个空 X session,于是黑屏。
✅ 解决方法(以 ~/.vnc/xstartup 为例):
nano ~/.vnc/xstartup
内容改成(Ubuntu 20.04/22.04 GNOME):
#!/bin/bash
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
export XKL_XMODMAP_DISABLE=1
exec /usr/bin/gnome-session
或(更稳):
exec startxfce4
(如果你装了 XFCE)
然后:
chmod +x ~/.vnc/xstartup
vncserver -kill :1
vncserver :1
Ubuntu 22.04+ 默认 Wayland,VNC 只支持 X11。
✅ 解决:
或彻底关闭 Wayland:
sudo nano /etc/gdm3/custom.conf
改成:
WaylandEnable=false
重启:
sudo reboot
如果你装的是 Ubuntu Server,默认没有 GUI。
✅ 检查:
which gnome-session
which startxfce4
✅ 安装(推荐 XFCE,轻量稳定):
sudo apt install xfce4 xfce4-goodies
然后用 startxfce4
vncserver(TightVNC)容易黑屏tigervncx11vnc(适合远程当前桌面)x11vnc 示例:
x11vnc -display :0
有时黑屏是因为客户端不兼容。
✅ 启动 VNC 时指定:
vncserver :1 -geometry 1280x720 -depth 24
~/.vnc 权限或日志异常查看错误:
cat ~/.vnc/*.log
常见错误:
dbus 报错gnome-session 找不到✅ 可临时加:
export DBUS_SESSION_BUS_ADDRESS=/dev/null
vncserver -list
vncserver -kill :1
你可以告诉我:
我可以直接给你一套可复制执行的命令。