在 CentOS 系统中,要使 VNC 服务在系统启动时自动运行,您需要创建一个 systemd 服务单元文件。以下是创建和配置 VNC 服务自动启动的步骤:
首先,确保已经安装了 VNC 服务器。如果没有,请使用以下命令安装:
sudo yum install tigervnc-server tigervnc-common
创建一个新的 systemd 服务单元文件。使用文本编辑器(如 vi 或 nano)创建一个名为 vncserver@.service 的文件:
sudo vi /etc/systemd/system/vncserver@.service
将以下内容粘贴到新创建的服务单元文件中,用实际用户名替换 <USER>:
[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=<USER>
Group=<USER>
WorkingDirectory=/home/<USER>
PIDFile=/home/<USER>/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
这个配置文件定义了一个名为 vncserver@.service 的服务,它在启动时会运行 VNC 服务器,并在关闭时终止它。请注意,您需要将 <USER> 替换为您自己的用户名。
保存并关闭服务单元文件。
重新加载 systemd 配置以识别新创建的服务:
sudo systemctl daemon-reload
启用 VNC 服务以在系统启动时自动运行。将 <DISPLAY_NUMBER> 替换为您希望 VNC 服务器监听的显示编号(例如,1 表示显示编号为 1):
sudo systemctl enable vncserver@<DISPLAY_NUMBER>.service
现在,VNC 服务已配置为在系统启动时自动运行。要手动启动或停止 VNC 服务,可以使用以下命令:
sudo systemctl start vncserver@<DISPLAY_NUMBER>.service
sudo systemctl stop vncserver@<DISPLAY_NUMBER>.service
完成这些步骤后,您的 CentOS 系统将在启动时自动运行 VNC 服务。