首页 > 解决方案 > 调用主脚本的 Systemd 单元文件

问题描述

我正在为 RHEL7 创建一个系统单元文件,如下所示:

[Service]
ExecStart=/opt/tibco/scripts/tibco-upstart.sh

这归用户A所有,他们可以添加他们想要添加的所有这些脚本。 /opt/tibco/scripts/tibco-upstart.sh调用APP TEAM可以随意添加的其他脚本。例如:/opt/tibco/scripts/tibco-upstart.sh看起来像

/tibco/scripts/startagents.sh
/tibco/scripts/startkafka.sh
/tibco/scripts/startjvms.sh

单元文件有可能像这样工作吗?我试过了forkingoneshot但进程没有按预期启动。

标签: linuxsystemdtibcorhel7

解决方案


假设您的系统单元没有其他相关指令,systemd将期望您的启动脚本作为守护程序永远运行;否则systemd将一遍又一遍地重生它。

如果您打算运行一次启动脚本,请添加指令

Type=oneshot
RemainAfterExit=Yes

进入服务部分。


推荐阅读