Как дать разрешение на файл задания cron? - PullRequest
3 голосов
/ 21 мая 2009

Я установил вкладку cron для своего сайта. Но в моем почтовом ящике есть сообщение типа «Отказано в доступе» для скрипта Может ли кто-нибудь помочь мне рассказать, в чем может быть проблема.

Спасибо ......

Ответы [ 3 ]

8 голосов
/ 21 мая 2009

Вы получаете эту ошибку при установке crontab? или из скрипта, запущенного из cron?

Если при установке crontab, попробуйте это:

Вы вводите: crontab -e Вы получаете: -bash: / usr / bin / crontab: в доступе отказано

Проблема: Ваш пользователь не входит в группу cron.

Решение: От имени пользователя root отредактируйте файл / etc / group, найдите группу cron и добавьте Ваш пользователь в этой строке (имена пользователей разделяются запятыми). Затем снова войдите в систему как пользователь.

Проверка: запустить команду "группы". Вы должны увидеть "cron" там.

(из http://www.parseerror.com/argh/crontab-e-Permission-denied.txt)

3 голосов
/ 02 октября 2012

Я столкнулся с этой проблемой сегодня и был озадачен, пока не понял, что запрещенные команды - это команды SSH. Я забыл, что соединяюсь с ключом SSH, который требует парольную фразу, поэтому реальная проблема не имеет ничего общего с cron в моем случае.

Мое решение состояло в том, чтобы создать дополнительный ключ для этого сценария без пароля (используя ssh-keygen), установить его на удаленном сервере и указать его в сценарии с флагом -i для команд ssh.

ssh -i /path/to/id_rsa.no-passphrase user@remote command-to-run
3 голосов
/ 14 апреля 2010

друзей, если кто-то хочет, чтобы расписание крон от другого пользователя просто сделай это

пользователь root: -

ls /usr/bin/crontab
chmod 4755 /usr/bin/crontab

echo PATH
vi /etc/crontab

SHELL=/bin/bash
PATH=/usr/java/jdk1.5.0_22/bin:/root/bin:/usr/java/jdk1.5.0_22/bin:/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin
MAILTO=root
HOME=/

cd /etc/cron.d

создать файл cron.allow, если он не существует

vi cron.allow
root
other username

сохранить и существовать

su – username
/usr/bin/crontab -e

расписание здесь ……………….

...