cron — планировщик заданий для Linux и Unix-подобных операционных систем. Он предустановлен во всех дистрибутивах Linux и лучше всего подходит для автоматизации повторяющихся задач.
Для правильной работы cron необходимо периодически проверять, нормально ли работает утилита в вашей системе. Вы можете сделать это четырьмя различными способами, включая проверку состояния службы cron, изучение журналов cron, запуск тестового задания cron и составление списка запущенных процессов в вашей системе.
Что такое крон?
Автоматический обработчик заданий, cron, автоматизирует и планирует системные задачи. Пользователи, которые настраивают и поддерживают программные среды, используют cron для планирования заданий, таких как команды или сценарии оболочки, также называемых заданиями cron, для периодического запуска в фиксированное время или через определенные промежутки времени.
cron автоматизирует задачи обслуживания или администрирования системы, которые вам могут понадобиться часто.
Как проверить, работает ли cron в Linux
Вот несколько способов проверить, правильно ли работает cron:
Способ 1: проверьте статус службы cron в Linux
Один из способов проверить, работает ли cron, — проверить состояние службы cron, выполнив базовую команду Linux. Откройте терминал Linux, нажав Ctrl+Альт+Т и использовать команда systemctl чтобы проверить статус cron:
sudo systemctl статус cron
Если вы видите следующий вывод, это означает, что cron активен и нормально работает в вашей системе.
Но что, если cron находится в неактивном состоянии, как показано ниже?
Вы можете запустить службу следующим образом:
служба sudo cron начинать
После запуска службы cron включите ее, чтобы она запускалась при каждой перезагрузке системы:
служба sudo cron давать возможность
Способ 2: проверьте журналы cron в Linux
Еще один способ проверить правильность работы cron — просмотреть файлы журналов. журналы cron хранятся в папке /var/log/syslog каталог в Linux.
syslog — это протокол, который системы Linux используют для централизации журналов данных о событиях. Затем осуществляется доступ к журналам для проведения аудитов, мониторинга, устранения неполадок, составления отчетов и других необходимых операционных задач ИТ.
Вы можете просмотреть журналы заданий cron в файле системного журнала, выполнив следующую команду:
grep КРОН /вар/log/syslog
Вы увидите аналогичный вывод, указывающий, что cron работает нормально, а его журналы хранятся в файле журнала:
Поскольку папка syslog содержит другие системные журналы наряду с журналами cron, может быть немного сложно проверить в файле только журналы, связанные с cron. Вы можете решить эту проблему, создав отдельный файл журнала, в котором хранятся только те записи cron, которые появляются в файле системного журнала.
Для этого откройте следующий файл с помощью редактора nano:
нано /etc/rsyslog.d/50-по умолчанию.conf
Найдите строку, которая начинается с:
#хрон.*
Раскомментируйте эту строку, удалив хеш (#) знак. Затем сохраните и выйдите из файла, нажав Ctrl + Х, затем нажмите Д и ударил Входить.
Перезапустите службу rsyslog, введя эту команду:
перезапустить службу sudo rsyslog
Теперь вы будете получать журналы в cron.log файл, расположенный в /var/log каталог.
Если ваш терминал не может получить какие-либо журналы, это может означать, что cron не запущен. В этом случае подтвердите, работает ли cron или нет, используя другие методы.
Способ 3: Запуск задания cron в Linux
Вы также можете проверить, работает ли cron, просто создав тестовое задание cron и выполнив его. Если задание успешно выполняет задачу, это означает, что оно работает нормально.
Сначала вам нужно создать Bash-скрипт. Сценарии Bash позволяют автоматизировать повседневные задачи в Linux.
Давайте создадим скрипт Bash, который будет печатать «мой cronjob работает!» в файл TXT. Чтобы создать файл, сначала узнайте свой текущий рабочий каталог с помощью этой команды:
pwd
Создать файл в текущем каталоге используя сенсорную команду:
трогатьфайл.текст
После этого создайте файл Bash с помощью nano:
наносценарий.ш
Добавьте в файл следующее содержимое:
#! /usr/bin/bash
эхо "мой cronjob работает!" >> /home/uимя пользователя/файл.txt
Обязательно укажите правильное расположение созданного вами текстового файла. Сохраните и выйдите из файла, нажав Ctrl + Х, затем Д, и ударил Входить.
Дайте разрешения на выполнение скрипту Bash:
chmod +Икссценарий.ш
Теперь создайте задание cron для выполнения скрипта. Для этого откройте файл crontab с помощью:
кронтаб -е
Введите следующую строку в конце файла.
* * * * * /path/в /script.sh
Пять звездочек соответствуют времени исполнения, в котором первая звездочка представляет минуты, вторая представляет часы, третья звездочка означает день, четвертая указывает на месяц, а последняя звездочка указывает год.
Имя исполняемого файла и путь к нему также указаны в файле.
После сохранения и закрытия файла вы увидите «crontab: установка нового crontabсообщение на терминале.
Чтобы проверить, сработало задание cron или нет, перейдите в каталог файл.txt и распечатать его содержимое на терминале с помощью cat:
котфайл.текст
Это указывает на то, что cron работает нормально.
Способ 4: проверьте запущенные процессы в Linux
Еще один способ проверить, работает ли демон cron, — составить список запущенных процессов в вашей системе. Вы можете достичь этого с помощью команды пс. Демон cron будет отображаться в выводе как crond.
пс-эф | grep кронд
Это подтверждает, что процесс cron запущен в вашей системе Linux.
Автоматизируйте и планируйте системные задачи с помощью cron
cron — одна из самых важных утилит в Linux, которая позволяет системе работать эффективно. Иногда вам нужно проверить, работает ли cron, при устранении неполадок в системе.
Вы можете добиться этого, проверив журналы cron или просмотрев запущенные процессы в вашей системе. Вы также можете проверить статус cron с помощью утилиты systemctl. Кроме того, запуск тестового задания cron также может сказать вам, запущена служба или нет.
Плавная работа cron позволяет автоматизировать и планировать повседневные системные задачи. Большинство заданий cron автоматически создаются установленными приложениями. Автоматизация и планирование задач повышает общую производительность системы и поддерживает ее работоспособность.