0
我想在系统启动时在Debian 9框中运行脚本。我的脚本在独立运行时工作,但在systemd下失败。系统脚本失败
我的剧本只是复制从远程服务器上的备份文件到本地机器:
#!/bin/sh
set -e
/usr/bin/sshpass -p "PASSWORD" /usr/bin/scp -p [email protected]:ORIGINPATH/backupserver.zip DESTINATIONPATH/backupserver/
只是为了保密我更换密码,用户和路径之上。
我写了下面的systemd服务单位:
[Unit]
Description=backup script
[Service]
Type=oneshot
ExecStart=PATH/backup.sh
[Install]
WantedBy=default.target
然后我设置权限的脚本:
chmod 744 PATH/backup.sh
,并安装服务:
chmod 664 /etc/systemd/system/backup.service
systemctl daemon-reload
systemctl enable backup.service
当我重新启动脚本失败:
● backup.service - backup script
Loaded: loaded (/etc/systemd/system/backup.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sat 2017-05-13 13:39:54 -03; 47min ago
Main PID: 591 (code=exited, status=1/FAILURE)
结果journalctl -xe的:
mai 16 23:34:27 rodrigo-acer systemd[1]: backup.service: Main process exited, code=exited, status=6/NOTCONFIGURED
mai 16 23:34:27 rodrigo-acer systemd[1]: Failed to start backup script.
mai 16 23:34:27 rodrigo-acer systemd[1]: backup.service: Unit entered failed state.
mai 16 23:34:27 rodrigo-acer systemd[1]: backup.service: Failed with result 'exit-code'.
出了什么问题?
不完全是一个编程问题,是吗? –
systemd日志应该记录了它的所有输出。尝试'journalctl -u备份' –
并且记住,您不必重新启动即可尝试运行systemd作业。首先让它使用'systemctl start backup'。 –