Планировщик задач Cron
Планировщик задач Cron позволяет выполнять различные задачи согласно заданному расписанию.
Создание задачи
Для создания задачи необходимо ввести следующую команду:
set system task-scheduler task <task> user <user_name>где <user_name> – имя пользователя от которого создаётся и будет запускаться задача.
Создание и запуск задач в планировщике по умолчанию доступны только пользователю класса NGFW_Super_Administrators. Пользователям других классов для работы с планировщиком задач необходимо выдать права на выполнение команды «set system task-scheduler» (см. раздел «Управление доступом»). Пользователь класса NGFW_Super_Administrators может указать любого активного пользователя в качестве создателя и исполнителя задачи. Пользователи других классов – только себя.
Для установки времени запуска задачи необходимо ввести следующую команду:
set system task-scheduler task <task> crontab-spec <spec>где:
<task> – имя задачи;
<spec> – время запуска задачи.
Для настройки параметра <spec> используется стандартный синтаксис сервиса Cron в виде пяти атрибутов «* * * * *», воспринимаемых как:
«минуты» – возможно использование значений в диапазоне от «0» до «59»;
«часы» – возможно использование значений в диапазоне от «0» до «23»;
«число» – возможно использование значений в диапазоне от «1» до «31»;
«месяц» – возможно использование значений в диапазоне от «1» до «12»;
«дни недели» – возможно использование значений в диапазоне от «0» до «7». Значения от «1» до «6» принимаются как дни недели с «понедельника» до «субботы» соответственно. Значения «0» или «7» принимаются как «воскресенье».
Поля могут содержать одно или несколько значений, разделённых запятыми, или диапазон значений, разделённых дефисом. Существует возможность указать шаг, используя символ «/». Например, при указании атрибутов следующим образом: «* */2 * * *» – задача будет выполняться каждые два часа.
В качестве примера приведена команда для настройки выполнения задачи «Task1» ежедневно в 07:00 и 18:00:
set system task-scheduler task Task1 crontab-spec '00 07,18 * * *'
Для настройки интервала запуска задачи возможно применение параметра «interval»:
set system task-scheduler task <task> interval <interval>где <interval> – интервал времени, в течение которого задача должна быть выполнена. Задаётся в виде числа с одним из следующих суффиксов: «m» – минуты, «h» – часы, «d» – дни. В случае ввода значения без суффикса, интервал воспринимается в минутах.
Для указания скрипта, запускаемого по расписанию, необходимо ввести следующую команду c параметром «executable path»:
set system task-scheduler task <task> executable path <path>где <path> – путь к скрипту и имя файла. В директории «/usr/local/bin/» расположены следующие скрипты:
«ngfwos-export» – выполняет сохранение текущей активной конфигурации;
«ngfwos-pki-crl-update» – выполняет автоматическое обновление списка отзыва сертификатов.
Для установки параметров скрипта необходимо ввести следующую команду:
set system task-scheduler task <task> executable arguments <args>где <args> – параметр скрипта.
Примечание
Создание и редактирование скриптов возможно выполнять с помощью какого-либо текстового редактора, например «nano».
Для выключения задачи с сохранением конфигурации необходимо ввести следующую команду:
set system task-scheduler task <task> disable
Например, для создания задачи «CrlUpdate» по автоматическому обновлению списка отзыва сертификатов необходимо ввести следующие команды:
set system task-scheduler task CrlUpdate user admin set system task-scheduler task CrlUpdate executable arguments 'example-ca' set system task-scheduler task CrlUpdate executable path '/usr/local/bin/ngfwos-pki-crl-update' set system task-scheduler task CrlUpdate interval '1m'В результате будет ежеминутно обновляться список отзыва сертификатов удостоверяющего центра «example-ca».
Просмотр информации о задачах
Для просмотра информации о всех задачах планировщика (см. Рисунок – Задачи планировщика) необходимо ввести следующую команду:
show system task-scheduler all
Рисунок – Задачи планировщика
В результате будет выведена информация в виде таблицы, содержащей следующие столбцы:
«Name» – имя задачи планировщика;
«Status» – статус задачи;
«Launch type» – тип запуска;
«Interval/spec» – интервал/время;
«Previous launch» – время предыдущего запуска;
«Next launch» – время следующего запуска;
«Launch status» – результат предыдущего выполнения;
«Author» – имя УЗ пользователя, создавшего задачу;
«Run as user» – имя УЗ пользователя, от прав которого инициировано выполнение задачи.
Для просмотра информации о какой-либо задаче планировщика необходимо ввести следующую команду:
show system task-scheduler task <task>