如何停止运行部件(/etc/cron.daily)

时间:2016-05-19 22:53:42

标签: shell cron crontab

我创建名为database_backup.sh的文件并将其放在/etc/cron.daily/中。 Crontab表达式是:

30 04 * * * /etc/cron.daily/database_backup.sh

然而,它每天运行两次,我发现这样的日志:

May 18 03:26:01 10-10-46-208 run-parts(/etc/cron.daily)[8478]: starting database_backup.sh
May 18 04:30:01 10-10-46-208 CROND[13673]: (root) CMD (/etc/cron.daily/database_backup.sh)

May 19 03:39:01 10-10-46-208 run-parts(/etc/cron.daily)[29669]: starting database_backup.sh
May 19 04:30:01 10-10-46-208 CROND[2530]: (root) CMD (/etc/cron.daily/database_backup.sh)

May 20 03:44:01 10-10-46-208 run-parts(/etc/cron.daily)[20184]: starting database_backup.sh
May 20 04:30:01 10-10-46-208 CROND[23886]: (root) CMD (/etc/cron.daily/database_backup.sh)

我的问题是:如何停止运行部件让它仅在4:30运行?

1 个答案:

答案 0 :(得分:1)

我认为通常将shell脚本存储在cron.d文件夹中并不是一个好主意,但是,Linux允许您放置几乎所有地方的任何内容......

这里的主要问题是默认的run-parts指令运行cron.d文件夹下的每个脚本,然后你的cron命令再次运行它。

  • 有关run-parts的更多信息,请访问 here

所以你可以:

  • 从crontab中取出跑步部分
  • 或将您的脚本放在/usr/bin/local或其他首选位置下,并相应地更改您的crontab。