设置cron作业超时


11

Ubuntu Linux cron(Vixie cron?)是否支持为其作业设置超时?

具体而言,除非在此之前成功完成,否则该过程将在X秒后终止。

在某些情况下,由于网络连接和各种问题而导致任务挂起。除非您手动清理并杀死它们,否则该过程将永远停止。

Answers:


26

在Ubuntu上,存在命令超时,这是coreutils的一部分。您可以像这样使用它来设置超时。Debian / Ubuntu的较早版本没有构建并包含此命令,但是timeout您可以安装类似的软件包。

# puppet shouldn't take more then 40 minutes!
47 * * * * root /usr/bin/timeout 2400 /usr/bin/puppet agent ...

3
持续时间也可以有一个后缀(“ s”代表秒,“ m”代表分钟,“ h”代表小时,“ d”代表天)。因此,为了获得更好的可读性,以上内容也可以写为47 * * * * root / usr / bin / timeout 40m / usr / bin / puppet agent ...
smoove666

不,它不能。至少与我编写此问题时的实现方式不符。coreutils中的新版本具有后缀。我在较旧的Debian系统上没有的版本。
Zoredache 2015年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.