Задача cron – это команда Linux, которая выполняется через регулярные промежутки времени. Эти «задания» могут быть запланированы через командную строку, но гораздо проще сделать это через интерфейс GUI cPanel. cPanel также удобно показывает количество существующих заданий cron, а также может отправлять выходные данные команды по электронной почте. В этой статье мы покажем вам, как планировать задания cron легко и эффективно.
Первым шагом является вход в cPanel и прокрутка вниз до тех пор, пока вы не найдете раздел с надписью «Дополнительно», а затем выберите «Cron Jobs», как показано здесь.
Теперь давайте создадим работу.
У вас есть опция в cPanel для отправки электронной почты всякий раз, когда выполняется это задание cron. Это может быть полезно, если вам нужно отслеживать определенные команды, которые вы используете. В следующем разделе введите адрес электронной почты, если хотите:
В раскрывающемся списке вы можете быстро выбрать некоторые общие расписания для своей работы. В большинстве случаев вы можете просто выбрать один из предварительно выбранных параметров. Здесь, например, мы запускаем команду раз в неделю с настройками по умолчанию:
Если вы хотите что-то более сложное, объясните, что означают поля.
Как указано в текстовых полях, вы можете ввести следующие значения:
Эти пять значений позволят вам создать любое сложное расписание, которое вы хотите. Каждое из этих полей принимает значение, которое относится к нему. Поэтому, чтобы взять «будний день» в качестве примера, значение «0» означает воскресенье, «1» – понедельник и т. д.
Использование звездочки или звездочки (*) в поле означает, что не имеет значения, что это за значение. Работа выполняется, когда дата и время на сервере соответствуют всем указанным значениям. Любое значение со звездой (*) будет соответствовать по умолчанию.
В приведенном выше примере мы хотели, чтобы задание выполнялось один раз в неделю. Таким образом, единственное, что нам нужно было указать, – это будний день – в этом случае 0. Мы также хотим убедиться, что работа выполняется только один раз в воскресенье, а не каждую минуту, поэтому мы указываем минуту и час. Помещенный, «один раз в неделю» можно записать как:
0 0 * * 0
Это так просто!
После того, как вы получите нужное расписание, введите команду Linux, которую вы хотите запустить, в поле с надписью «Command». В этом примере мы выбираем следующее:
mysqlcheck --all-databases --optimize --verbose
Эта команда оптимизирует все базы данных на всех веб-сайтах, размещенных на сервере.
Многие команды Linux выгружают вывод в терминал. Иногда эти сообщения могут быть очень длинными. Если вы решите получать уведомления по электронной почте, это может стать чрезвычайно раздражающим.
Вы можете подавить обычный, регулярный вывод команды Linux, добавив следующее после него:
>/dev/null
Таким образом, команда выше будет:
mysqlcheck --all-databases --optimize --verbose >/dev/null
Однако это не будет подавлять сообщения об ошибках. И это что-то полезное. Хотя вы можете игнорировать регулярный вывод, вы, вероятно, захотите получить уведомление, если что-то пошло не так. Однако мы также можем подавлять сообщения об ошибках, добавляя следующее к концу команд:
>/dev/null 2>&1
Дополнительные “2>&1” перенаправляют сообщения об ошибках на стандартный вывод, который мы автоматически игнорируем с помощью предыдущего “>/dev/null”.
Таким образом, вы можете выбирать и выбирать именно то, что вы хотите видеть, когда запускается ваша команда.
Теперь просто нажмите «Добавить новое задание Cron» после ввода команды, и все готово! Вы успешно настроили работу cron в Linux!