在 CentOS 上排查 VNC 报错,一般按「服务状态 → 日志 → 配置 → 端口/防火墙 → 账户权限」的顺序来。下面给你一套通用排查清单,适用于 TigerVNC / tigervnc-server(CentOS 7/8/Stream 常见)。
systemctl status vncserver@:1.service
# 或
ps aux | grep vnc
如果没启动:
systemctl start vncserver@:1.service
systemctl enable vncserver@:1.service
常见报错:
Unit not found → 服务名写错或未安装Job failed → 看下面日志journalctl -xe
journalctl -u vncserver@:1.service
cat ~/.vnc/*.log
cat ~/.vnc/localhost.localdomain:1.log
常见错误:
Permission deniedcould not open default fontX startup failedls ~/.vnc/
应有:
passwdxstartup示例(GNOME):
#!/bin/sh
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
或:
#!/bin/sh
gnome-session &
赋予执行权限:
chmod +x ~/.vnc/xstartup
vncpasswd
如果之前配置过但失效:
rm -f ~/.vnc/passwd
vncpasswd
:1 → 5901:2 → 5902ss -lntup | grep 590
firewall-cmd --list-all
firewall-cmd --add-port=5901/tcp --permanent
firewall-cmd --reload
getenforce
如果是 Enforcing,可临时测试:
setenforce 0
长期解决(谨慎):
setsebool -P vnc_enabled 1
| 报错 | 原因 | 解决 |
|---|---|---|
X authority file |
家目录权限问题 | chown -R user:user ~ |
Font catalog error |
字体缺失 | yum install xorg-x11-fonts-* |
Connection refused |
服务没起/端口不通 | 查服务+防火墙 |
Authentication failure |
密码错误 | vncpasswd |
| 黑屏 | xstartup 错误 | 修正 xstartup |
yum install -y tigervnc-server
vncserver :1
如果你能贴出具体报错信息(命令行输出或 .log 内容),我可以直接帮你定位是哪一步的问题。