Cron 作业正在运行,但 crontab -l 说没有作业

Cron 作业正在运行,但 crontab -l 说没有作业

我在 Pi 上运行 Raspbian 并安装了 cron 来安排作业。我编写了一个 Python 脚本,并将其设置为每 5 分钟运行一次。该工作每 5 分钟发生一次,没有问题,但是当我运行crontab -lasroot和 时pi,它说没有工作。crontab -e当我跑步时,root它们pi是空白的。

老实说,我记不清我何时开始这份工作的具体细节了。我知道我在格式为 a 的文档上写了一行crontab,并且我很确定它是作为root.

我发现了这一点,因为我要添加更多的工作,并且想在继续添加更多工作之前找到我所做的另一份工作。

答案1

有两个计划任务列表 (crontab)。

每个用户(包括 root)都有一个每个用户的 crontab,他们可以使用 列出crontab -l并编辑该 crontab crontab -e。 cron 的通常 Linux 实现将这些文件存储在/var/spool/cron/crontabs.您不应直接修改这些文件(crontab -e而是以用户身份运行),但列出它们以查看其中的内容是安全的。您需要成为 root 才能列出它们。

还有一个系统 crontab。该作业由 root 维护,并且作业可以以任何用户身份运行。系统 crontab由/etc/crontab./etc/cron.d这些文件有一个附加列:在 5 个日期/时间字段之后,它们有一个“用户”字段,这是作业将运行的用户。设置从目录、等/etc/crontab运行脚本是很常见的,这就是在 Raspbian 上完成的方式。/etc/cron.hourly/etc/cron.daily

所以看看所有这些地方:(/var/spool/cron/crontabs/*你需要成为这个的root)/etc/crontab,,/etc/cron.*

您还可以在系统日志中获取信息。他们不会告诉您作业的列出位置,但会准确告诉您正在执行的命令,以便您可以搜索命令文本。例如,这是/etc/cron.hourly每小时运行命令的条目:

May 11 07:17:01 darkstar CRON[2480]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

答案2

可能是其他用户提供的工作尝试列出为

ls -lR /etc/cron*

答案3

全局 cron 条目通常列在/etc/crontab.有关 crontab 及其文件位置的详细信息,请尝试man cronman crontab

答案4

crontab -l lists the cron jobs for the default user. 

它与出现的列表不同

sudo crontab -l 

它列出了 root 用户创建的 crons。有时,当我们看到日志显示成功的 cron 作业而 crontab 没有列出预期的作业时,我们会感到困惑。当前用户是关键

相关内容