0

cron からスクリプトを実行するように依頼されたので、スクリプト用に次の cronjob を作成しました。次のエラー メッセージが出力されます。

cronジョブ

#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

このアプリケーションは実行可能であると表示されますか

助けてくれてありがとう

4

1 に答える 1

2

権限housekeeper.shを持つように変更する必要があります(実行可能)755

chmod 755 housekeeper.sh

sh housekeeper.shとを実行すると、 で見つかった実行可能ファイルを呼び出してフィード/product/tools/housekeeper.shする方法が少し異なります。そのため、必要なのは の読み取り許可だけですが、実行して直接実行するには、実行許可が必要です (したがって、) 。shsh$PATHhousekeeper.shhousekeeper.sh/product/tools/housekeeper.sh755

編集

-rw-r-----許可をいただいているようです。簡単610に説明します。

ファイルには、3 ビットの 3 つのグループで表される 3 セットのアクセス許可があります。出力のように、最初のビットは読み取り許可を意味しますr。2 番目のビットは書き込み許可wであり、3 番目のビットは設定されていませんx。最初に所有者、グループ、次にその他の 3 つのセットがあるため、9 ビットあります。

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

sorw-r-----は、所有者に読み取りおよび書き込みビットがあり、グループに読み取りビットがあり、その他にはこのファイルに対して何もする権限がないことを示します。

755 を設定すると が得rwxr-xr-xられます。その理由を考えるのはあなたに任せます :D

于 2012-05-18T06:21:11.657 に答える