我无法让 crontab 运行

我无法让 crontab 运行

我有以下 crontab 文件(作为 root):

# Edit this file to introduce tasks to be run by cron.
# Each task to run has to be defined through a single line
indicating with different fields when the task will be run
and what command to run for the task
# To define the time you can provide concrete values for
minute (m), hour (h), day of month (dom), month (mon),
and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# For more information see the manual pages of crontab(5) and cron(8)
# m h  dom mon dow   command

1 * * * *  echo "test" >> /tmp/testing.txt

问题是该命令从未执行过。我可以看到/var/log/syslog该文件已被编辑:

May 25 17:51:57 XXXX crontab[5010]: (root) BEGIN EDIT (root)
May 25 17:52:26 XXXX crontab[5010]: (root) REPLACE (root)
May 25 17:52:26 XXXX crontab[5010]: (root) END EDIT (root)

当我运行时,crontab -l我可以看到该文件。

Cron service is running

我已经检查过/var/spool/cron/crontabs/并且文件根目录就在那里:

drwx-wx--T 2 root crontab 4096 May 25 17:53 .
drwxr-xr-x 5 root root    4096 Mar 17  2017 ..
-rw------- 1 root crontab 1384 May 25 17:53 root

并且内容正确。我重启了服务器,还是没用。

有人可以给我指明正确的方向吗?

答案1

您的 crontab 中有几行应该是注释,但#前面没有前导。在一条评论中,您说这在您的帖子中是错误的,删除它们没有帮助。

线路

1 * * * *  echo "test" >> /tmp/testing.txt

看起来不错,但这意味着

每天每小时运行给定的命令在第一分钟,即 12:01、13:01、14:01、15:01 等。

您需要等到该时间到达。如果您想运行您的作业每一分钟*还需要在分钟字段中添加一颗星号:

* * * * *  echo "test" >> /tmp/testing.txt

这将每分钟运行一次。我发现这个在线编辑器有助于了解某种模式的含义。

相关内容