控制台运行文件,但Cron没有

时间:2015-05-30 06:52:57

标签: bash shell cron crontab

我经历过以前的问题,我想我的环境变量是错误的。但我该怎么办呢......

我想每2小时执行一次包含此内容的.sh文件:

#!/bin/bash
find /directory -type f -print0 | xargs -0 chmod 666
find /directory -type d -print0 | xargs -0 chmod 755

但是当cron应该以root身份运行时,它只是不执行它,但是手动它呢?

提前致谢!

1 个答案:

答案 0 :(得分:1)

Crontab无法重新启动。特别是如果使用命令crontab -e编辑crontob。 这里是男人的行:

  

此外,cron每分钟检查一下它的假脱机目录的modtime(或/ etc / crontab文件中的modtime)          已更改,如果有,cron将检查所有crontabs文件的modtime并重新加载已更改的那些。          因此,无论何时修改crontab文件,都不需要重新启动cron。请注意,crontab(1)命令更新modtime          任何更改crontab的假脱机目录。

奇怪的是,重启cron服务解决了你的问题。也许你解决了一些其他可能的问题,如缺少权限。

您可以在执行命令/脚本的时间格式序列后面添加用户(例如root)。然后,该用户应被授予执行给定命令的权限。

重要提示:cron文件的最后一行必须是空行注释行