我在将一个简单的(aide --check)作业作为crontab作业运行时遇到了真正的问题。我试了我能想到的所有方法,但它似乎不能运行。我尝试在crontab中指定shell:
SHELL=/bin/bash我尝试了命令行的所有变体:
*/1 * * * * root /bin/bash /usr/sbin/aide --check
*/1 * * * * /bin/bash /usr/sbin/aide --check
*/1 * * * * root /usr/sbin/aide --check
*/1 * * * * root /bin/bash /usr/sbin/aide --check >> /var/log/SystemFileCheck.log加上其他人,但就是不能让它运行。我遵循了在线指南,它们都说我这样做是正确的。我试着把它放到一个bash脚本中并运行它,但是没有成功。我做错了什么?
以下是我收到的一些错误:
Mar 30 11:25:01本地主机CROND14060:(根) CMD (根/bin/bash /usr/sbin/aide --检查>> /var/log/SystemFileCheck.log) Mar 30 11:25:01本地主机CROND14058:(根)命令不存在
Mar 30 11:28:01本地主机CROND14397:(根) CMD (根/bin/SystemIntegCheck.sh >> /var/log/SystemFileCheck.log) Mar 30 11:28:01本地主机CROND14395:(根)命令不存在
Mar 30 11:39:01本地主机CROND16094:(根) CMD (/bin/bash /usr/sbin/aide --check) Mar 30 11:39:01本地主机CROND16092:(根) CMDOUT (/usr/sbin/aide: /usr/sbin/aide:无法执行二进制文件)
有谁能解释一下这件事吗?
提前感谢
PS。一分钟一次只是为了测试
发布于 2020-03-31 00:01:32
只能在系统crontab文件中指定用户id。用户的crontab文件中的条目不接受用户id。有问题的条目显然是在用户的crontab文件中找到的,这就是为什么您从第一个、第三个和第四个条目获得root: command not found。
在第二个示例中,您得到了cannot execute binary file,因为您要求bash在/usr/sbin/aide不是bash脚本时将它作为bash脚本执行。你应该使用
*/1 * * * * /usr/sbin/aide --checkhttps://stackoverflow.com/questions/60934334
复制相似问题