通常のユーザーとしては、cron設定を編集できません。 cronコマンドの一覧表示や編集など、すべてに対して「アクセスが拒否されました」というメッセージが表示されます。
例:
cron -l
cron: can't open or create /var/run/crond.pid: Permission denied
crontab -e
/var/spool/cron/crontabs/skerit: Permission denied
これらは/var/run/crond.pidの権限です:
-rwxr-Sr-- 1 root root 5 2011-05-27 12:44 crond.pid
---------- 1 root root 0 2011-03-23 21:13 crond.reboot
そして/ var/spool/cron /のパーミッション:
drwxr-sr-x 5 root root 4,0K 2009-12-23 23:01 cron
すべてのユーザーも/ etc/groupsファイルに追加されます。
crontab:x:102:skerit,www-data
これは厄介な問題でした。
最終的に、すべてのユーザーをcrontabグループに追加し、必要なすべてのファイルのグループ所有権をそのcrontabグループに設定しました。
多くの権限がめちゃくちゃになりました。グループの所有権を別のものに変更するには、まずそれらの権限を「リセット」します。
Crontab実行可能ファイル:Sudo chgrp crontab /usr/bin/crontab
Sudo chmod g+s /usr/bin/crontab
結果:-rwxrwsr-x 1 root crontab 37K 2010-04-15 08:51 /usr/bin/crontab
Cronスプールファイル:Sudo chmod 4774 -R /var/spool/cron
結果:drwsrwsr-- 5 root crontab 4,0K 2009-12-23 23:01 cron
これらのスプールディレクトリにあるcronファイルは、読み取りと書き込みのみが可能である必要があります。そうしないと、実行されません。 Sudo chmod 600 /var/spool/cron/crontabs/*
Cron pidファイル:Sudo chmod 744 /var/run/crond.pid
それでカバーできると思います。
CRONファイルの権限はユーザーrootグループrootに設定されているため、CRONファイルを変更または実行するにはrootである必要があります。または、rootとしてログインし、グループを別のグループに変更して、編集できるようにすることもできます。
これはどのLinuxディストリビューションですか? /etc/cron.allowまたは/etc/cron.denyファイルはありますか?もしそうなら、それらの内容は何ですか?
/var/spool/cron/crontabs/skerit
の権限は何ですか
すべてのユーザーが自分のcrontabを編集できる必要があります。