温馨提示×

ubuntu vnc如何调试

小樊
47
2026-07-12 18:28:58
栏目: 智能运维

在 Ubuntu 上调试 VNC 问题,通常可以从 服务状态、日志、配置、网络、权限 这几方面入手。下面给你一套比较系统的排查方法(适用于常见 VNC:TigerVNC / RealVNC / x11vnc / Ubuntu 自带远程桌面)。


一、确认 VNC 服务是否运行

systemctl status vncserver@:1
# 或(取决于你用的 VNC)
systemctl status tigervnc
systemctl status x11vnc

如果没运行:

journalctl -xe

看是否有明显报错。


二、查看 VNC 日志(最常见)

1️⃣ systemd 日志

journalctl -u vncserver@:1 -f

2️⃣ 用户 VNC 日志

~/.vnc/*.log

常见文件:

ubuntu:1.log
ubuntu:1.pid

重点看:

  • Fatal server error
  • Permission denied
  • Address already in use
  • Authentication failed

三、确认端口是否监听

VNC 默认端口:

  • 5900 → :0
  • 5901 → :1
  • 5902 → :2
ss -lntp | grep 590
# 或
netstat -lntp | grep 590

如果没有监听:

  • VNC 没启动
  • 端口被占用

四、确认防火墙

sudo ufw status

放行端口:

sudo ufw allow 5901/tcp

云服务器还要检查 安全组 / 防火墙规则


五、检查 VNC 配置

1️⃣ 检查启动配置

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

七、常见 VNC 类型调试要点

✅ TigerVNC

vncserver :1

问题常见原因:

  • 没装桌面环境
  • ~/.vnc/xstartup 配置错误

示例 xstartup

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /etc/X11/xinit/xinitrc

或:

exec startxfce4

✅ x11vnc

x11vnc -display :0 -forever -shared

调试:

x11vnc -display :0 -verbose

✅ Ubuntu 自带“远程桌面”

gsettings list-recursively org.gnome.desktop.remote-desktop

查看是否启用:

gnome-remote-desktop

八、客户端连接失败排查

  • 黑屏 → 桌面环境没启动
  • 闪退 → xstartup 错误
  • 连不上 → 端口 / 防火墙
  • 密码错误 → ~/.vnc/passwd

重置密码:

vncpasswd

九、快速自检清单 ✅

✅ VNC 服务运行
✅ 端口监听
✅ 防火墙放行
✅ Wayland 关闭
✅ 桌面环境已安装
✅ xstartup 可执行

chmod +x ~/.vnc/xstartup

十、如果你愿意,我可以直接帮你定位

你可以直接贴出:

  1. Ubuntu 版本(lsb_release -a
  2. 用的 VNC(TigerVNC / x11vnc / 自带)
  3. 报错日志(~/.vnc/*.log
  4. 客户端报错截图或文字

我可以一步一步帮你修 ✅

0