启动时自动启动oneshot服务

时间:2018-04-10 14:21:02

标签: systemd

我有一个onehot服务,我想在启动时在rhel 7.4上启动。

我理解"chkconfig --add"是实现这一目标的一种方法。但它需要启动脚本存在于

  

/etc/init.d目录

对于非onehot服务,我了解可以在systemd服务文件中使用“Restart =”选项。

如果我尝试为单拍服务设置Restart=always,则无效。 Oneshot服务需要"Restart=no"

有什么办法可以在启动时启动onehot服务,而无需使用

中的脚本
  

/etc/init.d目录

3 个答案:

答案 0 :(得分:0)

我认为你需要在/etc/init.d上添加服务并在启动时使用chkconfig始终启动服务,“chkconfig on”在计算机启动时启动服务。 您也可以通过脚本cron初始化服务。 请参阅:cat / etc / crontab

答案 1 :(得分:0)

“systemctl enable”负责启动任何服务,无论是单打还是其他服务。

答案 2 :(得分:0)

首先,由于我们没有提到你的 Systemd 服务,这里举个例子:

示例文件名:

/etc/systemd/system/my-startup-script.service

示例内容:

[Unit]
Description=My startup script
#After=network.target

[Service]
Type=oneshot
ExecStart=/root/my-startup-script.sh
RemainAfterExit=true

[Install]
WantedBy=multi-user.target

之后,只需启用它:

systemctl daemon-reload
systemctl enable my-startup-script

这就是我的朋友!