Назад | Перейти на главную страницу

crontab листинг или результаты редактирования в fopen: в доступе отказано

Недавно перестало выполняться задание, настроенное для запуска из пользовательского 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

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

Я столкнулся с той же ошибкой. Проблема была в каталоге /var/spool/cron/crontabs

$ sudo stat /var/spool/cron/crontabs
  Fichier : '/var/spool/cron/crontabs'
   Taille : 34          Blocs : 0          Blocs d'E/S : 4096   répertoire
Périphérique : 802h/2050d   Inœud : 272986341   Liens : 2
Accès : (1730/drwx-wx--T)  UID : (    0/    root)   GID : (  107/ crontab)
Accès : 2020-07-10 14:01:01.246597775 +0200
Modif. : 2020-07-10 14:01:00.806605868 +0200
Changt : 2020-07-10 14:01:00.806605868 +0200
  Créé : -

Если у вас другое разрешение / владелец / группа, вы можете исправить это следующим образом:

sudo chmod 1730 /var/spool/cron/crontabs
sudo chown root:crontab /var/spool/cron/crontabs