crontab fopen에서 결과 나열 또는 편집 : 권한 거부 2010 /usr/bin/crontab* / var / spool

최근에 사용자의 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 및 NOT suid가 있어야합니다.


답변

권한을 수정하지 않고 수퍼 유저 액세스 권한이있는 경우 사용자 crontab을 편집 할 수 있습니다.

$ sudo crontab -u username -e

sudo없이 사용자 crontab을 편집 할 수 있다고 생각했지만 crontab그룹에 자신을 추가 한 후에도 동일한 권한 문제가 발생합니다 . 내 사용자의 crontab ( /var/spool/cron/crontabs) 의 권한 은 -rw-------, 그룹은 crontab입니다.


답변