Недавно задание, настроенное для запуска из 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"
cron
ubuntu-10.10
permissions
stantonk
источник
источник
Ответы:
Разрешения для / usr / bin / crontab должны быть:
Ваш / usr / bin / crontab имеет неправильного владельца группы. Кроме того, он имеет sgid, а не suid, который должен иметь.
источник
-rwxr-sr-x 1 root crontab 35984 Feb 9 2013 /usr/bin/crontab
.Вы можете редактировать свой пользовательский crontab, если у вас есть права суперпользователя, без изменения прав доступа:
Я думал, что вы можете редактировать свой пользовательский crontab без sudo, но я получаю те же проблемы с правами доступа, что и вы, даже после добавления себя в
crontab
группу. Разрешения в crontab (/var/spool/cron/crontabs
) моего пользователя-rw-------
, группа естьcrontab
.источник