更新 vnc/create_vnc_autostarrt.sh

This commit is contained in:
2026-08-03 14:00:52 +08:00
parent 4555c9b26a
commit a1fa2396f2
+8 -3
View File
@@ -80,6 +80,7 @@ while IFS=':' read -r username password; do
#[Install]
#WantedBy=multi-user.target
# 写入专属的 systemd 服务配置
# 写入专属的 systemd 服务配置
cat <<EOF > "$SERVICE_FILE"
[Unit]
@@ -88,11 +89,15 @@ After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
# 核心修复点 1:除了常规 kill,强制移除残留的 X 锁文件和套接字
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :$DISPLAY_NUM > /dev/null 2>&1 || :'
ExecStartPre=/bin/sh -c 'rm -f /tmp/.X11-unix/X$DISPLAY_NUM /tmp/.X$DISPLAY_NUM-lock'
ExecStart=/usr/sbin/runuser -l $username -c "/usr/bin/vncserver :$DISPLAY_NUM"
PIDFile=/home/$username/.vnc/%H$DISPLAY_NUM.pid
# 核心修复点 2:修复 PIDFile 路径拼接(通常格式是 hostname:display.pid
PIDFile=/home/$username/.vnc/%H:$DISPLAY_NUM.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill :$DISPLAY_NUM > /dev/null 2>&1 || :'
[Install]