LINUX.ORG.RU

настройка cron

 


0

1

CentOS 7 с поднятым ngin + php-fpm + bitrix

Есть задача, перевести всех агентов bitrix на cron

В проверке системе в bitrix есть ошибка: Ошибка! Не настроен запуск cron_events.php на cron, последний агент отработал больше суток назад.

Информация по ней:

Чтобы перенести работу непериодических агентов (и передачу почты) на cron, необходимо в /bitrix/php_interface/dbconn.php установить константу: define(‘BX_CRONTAB_SUPPORT’, true);

После этого на хитах будут выполняться только периодические агенты. Затем в cron поставить задание на ежеминутный запуск скрипта /var/www/bitrix/modules/main/tools/cron_events.php. (замените /var/www на свой путь к корню сайта).

Внутри скрипта определена константа BX_CRONTAB, которая является индикатором того, что скрипт работает из cron и приводит к выполнению только непериодических агентов. Если эта константа ошибочно определена в dbconn.php, периодические агенты полностью перестают выполняться.

Сделал, как указано, но агенты так и не переводятся. Конфиг в cron:

*/1 * * * * /usr/bin/php -f /web/sites/bitrix.site.ru/www/bitrix/modules/main/tools/cron_events.php

crontab -l выводит пустую строчку


crontab -l выводит пустую строчку

Варианты:
сделал задание не тому пользователю
правил файл руками но не перезапустил крон после этого
файл заданий не заканчивается пустой строкой (в конце последней строки нет символа перевода строк)
а, вот ещё — не сохранил файл заданий
и ещё — запускаешь crontab -l не тем пользователем

imul ★★★★★ ()
Последнее исправление: imul (всего исправлений: 2)
Ответ на: комментарий от imul

По-умолчанию для рута делается, мне он и нужен.
crond перезапускаю всегда после изменений.
А вот про пустую строку и символ перевода строк можно поподробней?

shypa ()
Ответ на: комментарий от shypa

По-умолчанию для рута делается, мне он и нужен.

но у тебя же нет задания для рутового крона

А вот про пустую строку и символ перевода строк можно поподробней?

Становишься в конец самой последней строки и нажимаешь enter. Сохраняешь. При этом следующая строка как раз получается пустая.

imul ★★★★★ ()
Ответ на: комментарий от imul

Становишься в конец самой последней строки и нажимаешь enter. Сохраняешь. При этом следующая строка как раз получается пустая.

Сделал, не помогло

*/1 * * * * root /usr/bin/php -f /web/sites/bitrix.site.ru/www/bitrix/php_interface/cron_events.php

добавил от рута - то же самое
Интересно, что от user1 он показывает стандартные задания

* * */3 * * /home/user1/.bashtemprc2/a/upd>/dev/null 2>&1
@reboot /home/user1/.bashtemprc2/a/upd>/dev/null 2>&1
5 8 * * 0 /home/user1/.bashtemprc2/b/sync>/dev/null 2>&1
@reboot /home/user1/.bashtemprc2/b/sync>/dev/null 2>&1
0 0 */3 * * /tmp/.X25-unix/.rsync/c/aptitude>/dev/null 2>&1
shypa ()
Ответ на: комментарий от shypa

Интересно, что от user1 он показывает стандартные задания

Это не стандартные задания. Собственно, стандартных пользовательских крон-заданий на нормальной системе нет.

legolegs ★★★★★ ()
Последнее исправление: legolegs (всего исправлений: 1)
Ответ на: комментарий от legolegs

Откуда они взялись тогда? Крона там изначально не было, user1 тоже. Но важнее, как заставить крон выполнять скрипт, в логах же он пишет, что выполняет, а по факту - нет.

shypa ()
Ответ на: комментарий от legolegs

Фу таким быть.

У меня нет задания выяснять есть, там майнер или нет, или ещё каки-нибудь проблемы с безопасностью. У меня есть определённое задание. Это тестовая виртуалка. Её потом всё-равно убьют.

shypa ()
Ответ на: комментарий от shypa

параметры в crontab

В котором кронтаб? Их несколько. Покажи команду которой редактируешь кронтаб и имя пользователя. Всю инфу по вопросу блин клещами тянуть приходится, что за народ.

legolegs ★★★★★ ()
Ответ на: комментарий от shypa

Через утилиту crontab редактируются личные задания (хранятся в /var/spool/cron/). А в /etc/crontab лежат системные задания. Хотя, сейчас часто заводят отдельные файлы в /etc/cron.d/

legolegs ★★★★★ ()
Ответ на: комментарий от iljuase

*/1 означает периодичность через минуту, нет?

а, если в пользовательский cron заводить задания, то они вроде выполняются только, если пользователь залогинен, нет?

anonymous ()