Задача cron не работает, если положить в `/ etc / cron.hourly /`, но работать, если определено в `crontab -e`

Возможно, вы столкнулись с тем же, что заметили ... В [Torrent] Properties -> Files (tab), попробуйте изменить размер столбца «Имена», уменьшив его, а затем остальные параметры (есть, варианты). Вероятно, это ошибка в интерфейсе GTK относительно горизонтальной прокрутки.

1
задан 3 March 2017 в 09:31

1 ответ

Вы не предоставили достаточную информацию о скрипте, чтобы понять, что он должен делать, и почему это может потерпеть неудачу в работе cron - есть несколько общих причин.

Однако название вашего вопроса и первое абзац (о пользователях и корневых crontabs) кажется достаточно ясным, поэтому давайте ответим на это:

Пользователь crontabs и root crontabs имеют несколько разные форматы и не являются взаимозаменяемыми.

Пример:

1 1 * * * root /bin/foo   // root crontab in /etc/cron*
1 1 * * * /bin/foo        // user crontab in /var/spool (see it using the 'crontab' command

См. разницу? Корневой crontab имеет дополнительное поле для указания пользователя. Пользователю не нужно быть root ... хотя на практике обычно это root.

Предположим, вы хотите запустить задание резервного копирования базы данных. Добавьте корневой crontab в /etc/cron.d/, который запускает ваш сценарий резервного копирования. Просто запустите. Одна из распространенных ошибок заключается в том, чтобы сделать crontab более сложным, чем это должно быть. Вся логика и проверка ошибок, разрешения и ведение журнала должны быть в скрипте, а не в crontab.

-1
ответ дан 23 May 2018 в 01:00
  • 1
    OP поставил скрипт в /etc/cron.hourly/, и он вызывается из /etc/crontab с помощью run-parts. Что дает этот ответ контексту? – heemayl 2 March 2017 в 07:34
  • 2
    @heemayl отредактирован, чтобы лучше объяснить контекст. Спасибо за ответ. – user535733 2 March 2017 в 07:51

Другие вопросы по тегам:

Похожие вопросы: