新的主PID不属于服务,PID文件不属于root

arz*_*h84 11 vnc remote-desktop systemd

在 Xubuntu 18.04 作为服务运行 vncserver (tightvncserver) 时,出现此错误

新的主 PID 2095 不属于服务,PID 文件不属于 root。拒绝。

我的服务文件看起来像这样

/etc/systemd/system/vncserver@.service 

[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
User=user
PAMName=login
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
Run Code Online (Sandbox Code Playgroud)

根据这个bug 报告,它与systemd 的这个变化有关。

关于更新我的服务文件以便它再次与 systemd 一起工作的任何建议?

小智 7

您可能指的是本 Digital Ocean VNC 指南16.04 版本,而不是18.04 版本。在 18.04 版本中,该/etc/systemd/system/vncserver@.service文件应如下所示:

[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
User=sammy
Group=sammy
WorkingDirectory=/home/sammy

PIDFile=/home/sammy/.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
Run Code Online (Sandbox Code Playgroud)

请记住sammy用您自己的用户名替换所有 4 个实例。18.04 版本修复了我的问题,同一个PID 文件不属于您报告的root错误。