RHEL / CentOS是执行/etc/cron.d/*下的所有cronjob文件,还是仅执行其中一部分?


19

这是一个Red Hat Enterprise Linux 5系统(RHEL)。我们使用CFengine管理该系统。

我们有几个cronjobs,它们的运行频率是平时的两倍。我检查了cronjobs下的/etc/cron.d/目录,该目录包含名为的实际脚本host-backup,还包含名为的cfengine备份文件host-backup.cfsaved,如下所示:

/etc/cron.d/host-backup
/etc/cron.d/host-backup.cfsaved

此操作系统是在处执行所有文件/etc/cron.d/*,还是仅执行与特定模式匹配的文件。我可以配置它,在哪里定义?

我在RHEL或CentOS文档中找不到此答案。

Answers:


20

(如果您要为Red Hat支持付费,则应该向他们询问此类问题。这正是您要付费的!)

在RHEL5 crontab(5)手册页

如果存在该/etc/cron.d/目录,则该目录的解析方式与cron spool目录类似,不同之处在于该目录不是特定于用户的文件,因此使用/etc/crontab语法进行读取(在第六列中明确指定了用户)。

(是否有一种更简单的方法可以读取RHEL手册页而不访问它?至少以这种方式,我可以看到此段是Red Hat补丁程序的一部分,因此它不是标准的Vixie Cron 4.1功能。)

望着源,我看到下面的文件将被忽略:.*#**~*.rpmnew*.rpmorig*.rpmsave。因此,是的,*.cfsaved除了原始文件外,还读取了您的文件。


嗨,吉尔斯,非常感谢,我发现与中的语法完全相同vixie-cron-4.1-77.el5_4.1.src.rpm。具有讽刺意味的是,此文本不包含在cron的任何手册页中,也不包含在系统上的任何文本文件中。我不确定为什么会这样,但这是另一个讨论的主题。
Stefan Lasiewski 2010年

我发布了一个跟进的问题在unix.stackexchange.com/questions/4815
斯特凡Lasiewski

@吉尔斯:你赢了。RedHat来源应包含明确的答案。在这种情况下,(源似乎与安装的文件不同)[unix.stackexchange.com/questions/4815],但这是一个不同的主题。
Stefan Lasiewski 2011年

6

这是RedHat支持的答案:

请注意,已经检查并执行了cron.d目录下的所有文件,它基本上是/ etc / crontab文件的扩展(即,如果将条目添加到/ etc / crontab文件中,效果相同)。

因此,回答我的问题“此操作系统是执行/etc/cron.d/*上的所有文件,还是仅执行符合特定模式的文件。我可以配置它,在哪里定义?”

/etc/cron.d/*下的所有文件都将执行(尽管根据源文件中的文档,某些文件扩展名(如.rpmsave,*〜等)似乎被忽略了)。无法通过配置文件进行配置。如果重新编译源,则可能可以配置它。该行为在源代码随附的文档中已提及,但未出现在我可以找到的任何手册或手册页中。


5

我认为您很难找到答案的原因是,这不是特定于Red Hat的问题。您看到的问题是的标准功能的一部分cron-您所识别的目录中的每个文件都会自动视为一个单独的作业

因此,对您的问题的简短回答是“是的,所有文件都已执行”。我认为这不是可以配置的。


2
cron有不同的实现。Debian和Ubuntu随Vixie Cron(3.0)一起提供,其操作cron.d在其手册页中进行了描述。RHEL附带了ISC cron 4.1(同一项目的一个分支),并且手册页(至少在CentOS上)没有提及cron.d
吉尔斯(Gillles)“所以-别再作恶了”

1
@吉尔斯:谢谢你的指点。我正在使用安装了Cronie的Fedora(也是Vixie / ISC Cron的一个分支)。手册页确实提到/etc/cron.d它是搜索路径之一。如果答案中没有足够的细节,我深表歉意-我有理由肯定,这也应适用于Red Hat。请让我知道是否不是这种情况
mlschechter 2010年

1
在研究之后,这恰恰是一个特定于Red Hat的问题(请参阅我的答案)。Red Hat特有的,甚至CentOS也不同,而Fedora也可能不同(但是我没有检查)。
吉尔斯(Gilles)“所以,别再邪恶了”

1
@Gilles-很抱歉延迟回复。从Red Hat EL 5开始,Red Hat使用vixie-cron。RHEL 6使用cronie。回顾RHEL 5文档后,我认为它可以证实我的原始结论(如果来源错误)。再次感谢您为此提供的所有帮助。
mlschechter 2010年
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.