繁体   English   中英

Cronjob在运行时返回错误

[英]Cronjob returns an error when running

我的任务是从cron运行脚本,所以我为脚本编写了以下cronjob,它输出了以下提到的错误消息。

的cronjob

#BE housekeeper.sh
* * * * * /product/tools/housekeeper.sh -t BE > /tmp/fileset.out 2>&1

fileset.out包含错误消息。 这是错误消息。

/bin/sh: /product/tools/housekeeper.sh: Permission denied

为什么要说许可被拒绝。 user1可以执行如下管家脚本

$sh housekeeper.sh -t BE

然后我检查了user1是否被允许运行cronjob。 这张支票也通过了。 允许user1运行crontab。 那么在这种情况下可能出现的错误是什么呢。

root      4181     1  0  2011 ?        00:00:00 crond
user1    7648  7564  0 06:18 pts/0    00:00:00 grep cron

我检查了应用程序的执行权限

$ls -ltr

-rw-r----- 1 user1 aapp 11732 May 17 08:55 housekeeper.sh

它说这个应用程序是可执行的

非常感谢anyhelp

您需要更改housekeeper.sh才能获得755权限(可执行)

chmod 755 housekeeper.sh

运行sh housekeeper.sh/product/tools/housekeeper.shsh调用$PATH中的sh可执行文件并将housekeeper.sh到其中的方式略有不同,因此您只需要housekeeper.sh读取权限housekeeper.sh ,但通过执行/product/tools/housekeeper.sh直接运行它会要求你具有执行权限(因此755

编辑

我看到你有-rw-r-----许可,这简直就是610 ,让我解释一下

一个文件有3组权限,由3组3位表示。 第一位表示读权限,如在输出中,您看到r ,第二位是写权限w和第三位(未设置,是x ,可执行位)。 你有3套,第一套为Owner,Group,然后是Other,因此你有9位

 111 111 111
 VVV VVV VVV
  |   |   |
Owner |   |
    Group |
        Other

所以rw-r-----表示所有者具有读写位,组具有读取位,而其他人无权对该文件执行任何操作。

设置755将产生rwxr-xr-x ,我会留给你思考为什么:D

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM