我有一个定制的服务文件,但我无法运行它。这是 ExecStart 行:
ExecStart=/bin/rsync --ignore-existing -rtvu /var/foo/foo/ /var/foo2/foo2 && /bin/chown nginx:nginx -R /var/foo2/foo2/ && /bin/chmod -R 777 /var/foo2/foo2/
每当我尝试运行该服务时,我都会在日志文件中收到以下错误消息:
Sep 26 10:27:21 myserver rsync[9609]: Unexpected remote arg: nginx:nginx
Sep 26 10:27:21 myserver rsync[9609]: rsync error: syntax or usage error (code 1) at main.c(1214) [sender=3.0.9]
任何想法是什么问题?当我将它们复制粘贴到我的终端时,这些命令运行良好
ExecStart 不是外壳。请参阅文档https://www.freedesktop.org/software/systemd/man/systemd.service.html中的“命令行”部分。
您需要使用命令行作为参数运行 shell。