我有一些定期运行的内部自动化脚本。 一个是每五分钟一个,另一个是每分钟。 他们并不需要在点上跑; 例如我不在乎他们是在12:00,12:05等还是在12:03,12:08等运行,我只需要一个稳定的时间间隔。
目前,我有crontab以指定的时间间隔运行这些脚本。 但是,在同一台机器上,我也有自定义的内部systemd服务单元文件。 我很好奇将脚本移动到systemd服务单元和定时器文件,还是使用带有Restart和RestartSec指令的systemd服务单元文件更好。
让我知道如果我需要重新措辞或如果我不清楚。
具体来说, systemd.service单元的定义将Restart=always和RestartSec=300翻译为“每隔五分钟总是运行一次而忽略上一次运行的退出代码”的同义词。 但是,也有systemd.timer单位可以configuration做相同的,但可能与特定的退出代码,如只成功退出。
我正在寻找两者的优点和缺点。
谢谢!
我build议使用stream程pipe理器来完成你的工作。 幸运的是,你有最好的过程经理, systemd 。 在我看来,它是关于语义的,即使两种解决scheme都适合您的情况。
RestartSec ,则会很快达到释抑超时。