crontab вывод или редактирование результатов в fopen: разрешение запрещено

10

Недавно задание, настроенное для запуска из 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"
stantonk
источник
Не ответ на ваш вопрос, но вы можете посмотреть на обновление. Обновления безопасности - это хорошо.
Ладададада
Кто пользователь? 2013 ?
krisFR

Ответы:

5

Разрешения для / usr / bin / crontab должны быть:

 owner=root
 group=root
 perms= 4755  (rws rx rx)

Ваш / usr / bin / crontab имеет неправильного владельца группы. Кроме того, он имеет sgid, а не suid, который должен иметь.

Якорь,
источник
1
Есть ли причина, по которой значения по умолчанию не будут такими, как вы написали? Я не трогал мои разрешения (Ubuntu 14.04), и у меня есть -rwxr-sr-x 1 root crontab 35984 Feb 9 2013 /usr/bin/crontab.
Готье
1
Я столкнулся с этой проблемой после удаления воссозданного пользователя с другим UID - это исправило это для меня: askubuntu.com/questions/710671/…
Райан Так Так
5

Вы можете редактировать свой пользовательский crontab, если у вас есть права суперпользователя, без изменения прав доступа:

$ sudo crontab -u username -e

Я думал, что вы можете редактировать свой пользовательский crontab без sudo, но я получаю те же проблемы с правами доступа, что и вы, даже после добавления себя в crontabгруппу. Разрешения в crontab ( /var/spool/cron/crontabs) моего пользователя -rw-------, группа есть crontab.

Готье
источник