我在启动服务之类的应用程序时遇到问题。我需要设置这个应用程序以在 ubuntu 上启动,我决定创建一个服务。我可以使用 sudo 通过终端运行这个应用程序,它工作正常。但服务还没有完全启动。在日志中我可以看到:SysDirRead_[188]: stat(var/run/user/1000//gvfs):Permission denied
。我认为该应用程序无法启动所有组件,因为它没有权限。下面的服务conf文件。我测试过User and Group = root
。
[Unit]
Description=custom service
After=network.target
[Service]
Restart=always
RestartSec=10
ExecStart=path/application.bin path/conf_file.conf
# Output to syslog
StandardOutput=syslog
StandardError=syslog
#Change this to find app logs in /var/log/syslog
SyslogIdentifier=vplc
[Install]
WantedBy=multi-user.target
谢谢!
答案1
gvfs 是一个 FUSE 挂载点。由于 FUSE 文件系统不是由内核代码实现的,因此 root 不会自动具有访问权限。这由 FUSE 应用程序决定。
如果应用程序不需要 root 权限,那么让它在 UID 1000 下运行可能会有所帮助。