Добавить задачу в планировщик cron

Skip to end of metadata
Go to start of metadata

Задача внутри контейнера asr_billing

Если у вас есть задачи по управлению абонентами по api или выполнения отчёта, то их удобно хранить в контейнере asr_billing.

Статья актуальна для версий старше 5.79.
  1. Зайдите в контейнер asr_billing;
    chroot /app/asr_billing/
    
  2. Создайте каталог для хранения скриптов;
    mkdir /cfg/opt
    
  3. Разместите в нём свой скрипт;
    /cfg/opt/script.sh
    
  4. Удобно разместить задание в одном из каталогов. Оно будет выполнено периодически по названию каталога. Например, для cron.daily - раз в сутки;
    /etc/cron.10m
    /etc/cron.1m
    /etc/cron.daily
    /etc/cron.hourly
    /etc/cron.monthly
    /etc/cron.weekly
    
  5. Создайте файл с заданием;
    /etc/cron.daily/run_script_daily
    
  6. Задание будет выглядеть следующим образом;
    #!/bin/bash
    set -eu
    PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin/
    
    /cfg/opt/script.sh &>>/var/log/script.sh.log
    exit 0
    

    При этом логи скрипта будут записаны в файл /var/log/script.sh.log.

  7. Установите права для запуска задания;
    chmod 755 /etc/cron.daily/run_script_daily
    
  8. Скопируйте задание в каталог хранения;
    mkdir -p /cfg/etc/cron.daily
    
    cp -p /etc/cron.daily/run_script_daily /cfg/etc/cron.daily
    
  9. Загрузите новую конфигурацию в планировщик;
    service crond reload
    
  10. Выйдите из контейнера asr_billing;
    exit
    

Если возникнет проблема в настройке задания, отладить её можно в логе.

/app/asr_billing/var/log/cron

Метки

Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.