温馨提示×

CentOS VNC如何开机启动

小樊
43
2026-08-03 03:53:20
栏目: 智能运维

下面以 CentOS 7/8(使用 systemd) 为例,说明 VNC Server 开机自启动 的完整做法。如果你用的是 CentOS 6(init),可以再告诉我,我再单独说明。


一、前提:已安装并配置好 VNC Server

TigerVNC 为例(最常见):

yum install -y tigervnc-server

设置 VNC 密码:

vncpasswd

二、CentOS 7 / 8 设置 VNC 开机启动(推荐方式)

1️⃣ 复制 VNC 服务模板

假设使用 :1(端口 5901),用户为 root(生产环境不建议 root,可换成普通用户):

cp /lib/systemd/system/vncserver@.service \
   /etc/systemd/system/vncserver@:1.service

2️⃣ 修改服务文件

编辑:

vi /etc/systemd/system/vncserver@:1.service

找到这一行:

ExecStart=/usr/bin/vncserver_wrapper <USER> %i

改为(示例用户为 root):

ExecStart=/usr/bin/vncserver_wrapper root %i

✅ 如果是普通用户,比如 testuser

ExecStart=/usr/bin/vncserver_wrapper testuser %i

3️⃣ 重新加载 systemd

systemctl daemon-reload

4️⃣ 设置开机自启

systemctl enable vncserver@:1.service

5️⃣ 启动 VNC 服务

systemctl start vncserver@:1.service

查看状态:

systemctl status vncserver@:1.service

三、验证是否开机启动成功

重启系统:

reboot

重启后检查:

systemctl status vncserver@:1.service
ss -lntp | grep 5901

四、常见端口说明

VNC 显示号 端口
:1 5901
:2 5902
:3 5903

防火墙放行示例(firewalld):

firewall-cmd --add-port=5901/tcp --permanent
firewall-cmd --reload

五、CentOS 6(init)方式(简要)

vi /etc/sysconfig/vncservers

添加:

VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 1024x768"

然后:

chkconfig vncserver on
service vncserver start

六、推荐做法(安全建议)

  • ✅ 使用 普通用户 启动 VNC
  • ✅ 配合 SSH 隧道 使用
  • ✅ 避免直接暴露 5901 到公网

如果你愿意,可以告诉我:

  • ✅ CentOS 具体版本
  • ✅ 使用 root 还是普通用户
  • ✅ 是否使用 GNOME / KDE

我可以给你一份 完全贴合你环境的配置方案

0