是否/何时执行“at”作业的任何日志?

Amo*_*ira 14 linux centos syslog cron

我已经在 CentOS 5 上的特定时间设置了几个“at”作业。今天早上我没有在队列中看到这些命令(“atq”),正如预期的那样,但我也没有看到可以我检查负责执行它们的守护进程是否按时执行或有任何问题。不幸的是,我没有从脚本本身记录足够的信息。有任何想法吗?

And*_*ase 10

从查看“at”程序的源代码(来自 CentOS 5.3 源代码库)来看,它看起来确实在记录到 syslog,但只记录了有关 at 守护程序本身的致命错误(例如,如果您尝试运行2 同时在守护进程中)。

但是,进程执行、结果返回代码和标准错误/输出根本不会记录到系统日志中。即使在打开调试(需要重新编译)时,日志消息的信息量也不大(对于最终用户),并且会写如下内容:

atd[24116]: pid 24121 以状态 0 退出。

这对您确定运行了哪个命令、哪个用户或其标准输出/错误是什么没有多大帮助。

atd 确实会向请求命令的用户发送电子邮件通知,以防命令失败或在其标准输出/错误中产生任何内容。但是对于没有任何输出而成功的命令,则不会发送邮件。您可以使用 -m 标志更改它。

从(1):

-m Send mail to the user when the job has completed even if there was no output.
Run Code Online (Sandbox Code Playgroud)

借用 Tom Feiner 对几乎相同问题的回答