Cron:所有内容的权限均被拒绝

Cron:所有内容的权限均被拒绝

作为普通用户,我无法编辑我的 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

答案1

这是一个很棘手的问题。

我最终将所有用户添加到 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 spool 文件:
sudo chmod 4774 -R /var/spool/cron
结果:drwsrwsr-- 5 root crontab 4,0K 2009-12-23 23:01 cron

这些 spool 目录中的 cron 文件必须为只读且只写。否则它们将无法运行。 sudo chmod 600 /var/spool/cron/crontabs/*

cron pid 文件:
sudo chmod 744 /var/run/crond.pid

我认为那应该可以涵盖它。

答案2

CRON 文件的权限设置为用户 root 组 root,因此您需要以 root 身份修改或运行 CRON 文件。或者,您可以以 root 身份登录并将组更改为其他组,以便编辑它。

答案3

这是什么 Linux 发行版?是否有 /etc/cron.allow 或 /etc/cron.deny 文件?如果有,它们的内容是什么?

有哪些权限 /var/spool/cron/crontabs/skerit

任何用户都应该能够编辑自己的 crontab。

相关内容