【问题标题】:How diagnose cron.weekly script that doesn't run weekly如何诊断不每周运行的 cron.weekly 脚本
【发布时间】:2015-06-13 01:20:16
【问题描述】:

我在 /etc/cron.weekly 目录中有一个名为 example.py 的 python 脚本

文件顶部有shebang行;

#!/usr/bin/env python

文件权限是;

-rwxr-xr-x root root

我是否遗漏了什么,或者有没有办法诊断它为什么不运行。也许是错误日志?

【问题讨论】:

    标签: python ubuntu cron


    【解决方案1】:

    去掉文件名中的 .py 扩展名。

    根据cron手册:

    文件 /etc/cron.d 下的文件不需要可执行,而 /etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 下的文件可以执行,因为它们是由运行部件运行(见 run-parts(8) 了解更多信息)。

    来自运行部件手册:

    run-parts 运行在下面描述的约束中命名的所有可执行文件,这些文件位于目录目录中。其他文件和目录将被静默忽略。

    如果既没有给出 --lsbsysinit 选项也没有给出 --regex 选项,则名称必须完全由 ASCII 大小写字母、ASCII 数字、ASCII 下划线和 ASCII 减号。

    因此,要测试您的脚本是否具有可接受的名称,您可以运行以下命令:

    run-parts --test /etc/cron.weekly
    

    如果您的脚本在输出中列出,那么您的脚本将被调用。

    【讨论】:

    • 我猜这是RTFM的一个例子。谢谢。
    猜你喜欢
    • 2011-06-26
    • 2011-06-02
    • 1970-01-01
    • 2013-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    相关资源
    最近更新 更多