在 Ubuntu 上调试 VNC 问题,通常可以从 服务状态、日志、配置、网络、权限 这几方面入手。下面给你一套比较系统的排查方法(适用于常见 VNC:TigerVNC / RealVNC / x11vnc / Ubuntu 自带远程桌面)。
systemctl status vncserver@:1
# 或(取决于你用的 VNC)
systemctl status tigervnc
systemctl status x11vnc
如果没运行:
journalctl -xe
看是否有明显报错。
journalctl -u vncserver@:1 -f
~/.vnc/*.log
常见文件:
ubuntu:1.log
ubuntu:1.pid
重点看:
Fatal server errorPermission deniedAddress already in useAuthentication failedVNC 默认端口:
5900 → :05901 → :15902 → :2ss -lntp | grep 590
# 或
netstat -lntp | grep 590
如果没有监听:
sudo ufw status
放行端口:
sudo ufw allow 5901/tcp
云服务器还要检查 安全组 / 防火墙规则。
cat ~/.vnc/config
常见配置:
session=ubuntu
geometry=1920x1080
localhost=no
⚠️ localhost=no 否则只能本机连接。
Ubuntu 22.04+ 默认 Wayland 不支持很多 VNC
echo $XDG_SESSION_TYPE
如果是 wayland:
sudo nano /etc/gdm3/custom.conf
取消注释:
WaylandEnable=false
然后重启:
sudo systemctl restart gdm3
vncserver :1
问题常见原因:
~/.vnc/xstartup 配置错误示例 xstartup:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /etc/X11/xinit/xinitrc
或:
exec startxfce4
x11vnc -display :0 -forever -shared
调试:
x11vnc -display :0 -verbose
gsettings list-recursively org.gnome.desktop.remote-desktop
查看是否启用:
gnome-remote-desktop
xstartup 错误~/.vnc/passwd重置密码:
vncpasswd
✅ VNC 服务运行
✅ 端口监听
✅ 防火墙放行
✅ Wayland 关闭
✅ 桌面环境已安装
✅ xstartup 可执行
chmod +x ~/.vnc/xstartup
你可以直接贴出:
lsb_release -a)~/.vnc/*.log)我可以一步一步帮你修 ✅