Systemd 服务成功但未启动脚本

Systemd 服务成功但未启动脚本

我创建了一个必须在启动时启动的脚本。因此,对于此脚本,我创建了一个 systemd 服务并在 systemctl 中启用了它。该脚本在 /mnt 中创建一个文件夹,然后将 cd 挂载到该文件夹​​,复制文件,卸载 cd 并再次删除该文件夹。

当我执行脚本时,脚本正在执行它应该执行的操作。但是当我执行服务 (systemctl start startupscript.service) 时,服务按预期完成,但显然脚本未执行。但是服务告诉我它已成功结束。日志中也没有任何内容表明出现任何问题。

有人知道发生了什么事吗?

谢谢!

# cat /etc/systemd/system/startupscript.service
[Unit]
Description=A random description

[Service]
Type=oneshot
ExecStart=/usr/lib/systemd/scripts/startup

[Install]
WantedBy=multi-user.target

答案1

问题是文件系统尚未加载,脚本需要分叉。

通过添加/更改解决了问题:

[Unit]
After=local-fs.target
[Service]
Type=forking

相关内容