如何增加cronjob/crontab的超时?

Moh*_*nka 12 cron timeout

我编写了一个脚本,它从solr获取数据,其日期在指定的时间段内,并且我使用每日cron运行脚本.

问题是cronjob没有完成任务.如果我手动运行脚本(在相同的时间段内),它运行良好.如果我减少指定的时间段,脚本也会从cron运行.所以我的猜测是cronjob在运行脚本时超时是否需要处理很多数据.

如何增加cronjob的超时?

PS - 1.我在cronjob中运行的脚本是一个运行python脚本的bash脚本.

Low*_*ell 19

请注意,ulimit -t建议的解决方案将限制使用的CPU时间量,而不是已经过的实际时间量.

bash联机帮助页:

ulimit [-HSTabcdefilmnpqrstuvx [limit]]
...
-t     The maximum amount of cpu time in seconds
Run Code Online (Sandbox Code Playgroud)

更重要的是,cron首先不会施加任何超时.它只是启动任何过程并继续前进.


顺便说一句:很抱歉发布这个作为答案,但我还没有足够的积分来添加评论.


sch*_*der 5

在运行脚本之前,您可以尝试在cronjob中使用ulimit -t [秒数].