Задания Cron не работают в VestaCP (CentOs)
Я написал несколько сценариев PHP, которые я пытаюсь запустить с заданиями cron в VestaCP, но они, похоже, не работают. Я пытался найти другие темы здесь и на форуме VestaCP, которые могли бы помочь мне определить ошибку, но не нашел решения.
Серверная система:
- CentOs 7.4
- Веста 0.9.8-22
Я протестировал PHP-скрипты, перейдя по ссылкам напрямую. Все они работают хорошо. Но задания cron не работают, и я не могу понять, почему.
Мне не удалось найти какие-либо сообщения об ошибках или журналы, созданные этими заданиями cron (даже когда я удаляю "> /dev/null 2>&1"). Но я мог искать не в том месте.
Все задания cron были добавлены через интерфейс cron VestaCP.
Я отключил exim, dovecot, clamd и spamassassin. И я отключил уведомления в панели cron. Не уверен, что это связано.
Скопировано из /var/spool/cron/admin [отредактированное доменное имя]:
15 02 * * * sudo /usr/local/vesta/bin/v-update-sys-queue disk
10 00 * * * sudo /usr/local/vesta/bin/v-update-sys-queue traffic
30 03 * * * sudo /usr/local/vesta/bin/v-update-sys-queue webstats
*/5 * * * * sudo /usr/local/vesta/bin/v-update-sys-queue backup
10 05 * * * sudo /usr/local/vesta/bin/v-backup-users
20 00 * * * sudo /usr/local/vesta/bin/v-update-user-stats
*/5 * * * * sudo /usr/local/vesta/bin/v-update-sys-rrd
15 6 * * * sudo /usr/local/vesta/bin/v-update-sys-vesta-all
01 4 * * * sudo /usr/local/vesta/bin/v-update-letsencrypt-ssl
*/5 * * * * wget -q -O - "https://testing.example.com/cli/new-projects" > /dev/null 2>&1
*/5 * * * * wget -q -O - "https://example.com/cli/new-projects" > /dev/null 2>&1
30 10 * * * wget -q -O - "https://example.com/cli/project-expiration" > /dev/null 2>&1
*/5 * * * * sudo /usr/local/vesta/bin/v-update-sys-queue letsencrypt
0 10 * * * wget -q -O - "https://testing.example.com/cli/project-expiration" > /dev/null 2>&1
*/2 * * * * wget -q -O - "https://testing.example.com/cli/email-sender" > /dev/null 2>&1
*/2 * * * * wget -q -O - "https://example.com/cli/email-sender" > /dev/null 2>&1
0 ответов
У меня была такая же проблема в Ubuntu.
Проблема заключалась в том, что задания cron, созданные из панели управления VestaCP, созданы для пользователя, и, хотя в начале команды есть sudo, они не запускаются.
Кажется, они вызваны, так как я вижу их в файле / tmp / log / syslog. Это не показывает никакой ошибки, хотя. Но по какой-то причине команды не выполняются.
Вот несколько простых команд для проверки статуса cron. Проверьте, запущена ли служба Cron: pgrep cron - если возвращено число, служба работает, если нет. Проверьте состояние Cron. Systemctl Состояние cron. Проверьте текущий файл cron. Crontab -l. Редактировать файл corn job crontab -e.
Одним из решений является создание заданий cron для пользователя root из терминала. Я не пробовал для других пользователей. Задания cron, созданные для пользователя root, будут работать без проблем.