最近,configuration为从用户的crontab运行的作业停止执行。 当试图列出或编辑用户的crontab时,结果是:
user@host:~$ crontab -l crontabs/user/: fopen: Permission denied user@host:~$ crontab -e crontabs/user/: fdopen: Permission denied
显然这是权限相关的,虽然我不知道如何改变权限 – 更重要的是,他们应该设置。
/ usr / bin / crontab上的权限:
$ ll /usr/bin/crontab -rwxr-sr-x 1 root libuuid 35896 Aug 24 2010 /usr/bin/crontab*
/ var / spool / cron / crontab目录上的权限:
# ll /var/spool/cron/ total 12 drwxr-xr-x 3 root root 4096 Oct 12 2010 ./ drwxr-xr-x 7 root root 4096 Jun 5 20:51 ../ drwx-wx--T 2 root libuuid 4096 Jan 10 2014 crontabs/
crontab目录中的权限:
# ll /var/spool/cron/crontabs/ total 16 drwx-wx--T 2 root libuuid 4096 Jan 10 2014 ./ drwxr-xr-x 3 root root 4096 Oct 12 2010 ../ -rw------- 1 1017 libuuid 1120 Dec 3 2013 -rw------- 1 root libuuid 1342 Jan 10 2014 root
发行信息:
# cat /etc/*-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=10.10 DISTRIB_CODENAME=maverick DISTRIB_DESCRIPTION="Ubuntu 10.10"
/ usr / bin / crontab上的权限应该是:
owner=root group=root perms= 4755 (rws rx rx)
您的/ usr / bin / crontab拥有错误的组所有者。 另外,它有sgid和不suid它必须有。
如果您拥有超级用户访问权限,则无需修改权限即可编辑用户crontab:
$ sudo crontab -u username -e
我以为你可以在没有sudo的情况下编辑你的用户crontab,但是我得到和你一样的权限问题,即使把自己添加到crontab组中。 我用户的crontab( /var/spool/cron/crontabs )中的权限是-rw------- ,group是crontab 。