Посмотреть CRON, автоматизация с /etc/cron.d


Посмотреть CRON задания можно через crontab от имени пользователя, для которого они заданы и в системном каталоге /etc/cron.d



Как посмотреть CRON задания


Для каждого пользователя посмотреть список заданий, выполняемых по расписанию можно выполнив crontab -l



root@site:/etc/cron.d# crontab -l | grep -v '#'

*/5 * * * * /opt/script.sh

Здесь и далее из вывода убираются все комментарии при помощи grep



Проделать это можно также для пользователей, для которых оболочки по умолчанию не установлено и авторизация не предполагается — например, для www-data

root@site:/etc/cron.d# su — www-data -s /bin/bash

www-data@site:~$ crontab -l

no crontab for www-data



Автоматизация добавления CRON заданий


Кроме crontab пользователей есть возможность размещать скрипты в директории /etc/cron.d, они также будут выполняться

root@site:~# cd /etc/cron.d

root@site:/etc/cron.d# ls

atop certbot php



Отличие при работе с /etc/cron.d только в том, что в задании указывается дополнительно имя пользователя, в примере это root


root@site:/etc/cron.d# cat php | grep -v '#'

09,39 * * * * root [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi


Также можно посмотреть существующий по умолчанию скрипт для утилиты atop. Он приведен на скриншоте ниже.

Интервал записи логов утилитой можно поменять не только в конфигурационном файле, но и прямо в crontab задании.


посмотреть cron


Обязательна пуская строка после списка заданий каждого CRONTAB. Без нее установить расписание не удастся и система будет выдавать ошибку.



Скрипты в /etc/cron.d удобны тем, что позволяют автоматизировать работу. Какой-то сценарий может добавлять задания для определенных пользователей или перезаписывать их без участия администратора

cat task.sh > /etc/cron.d/task



Также в каталоге удобно размещать задания для определенных сервисов. Они не будут отображаться в crontab пользователя, это может быть важно если заданий много. Также гибко можно задавать пользователей, с правами которых выполняются задания.



Обязательны указание времени выполнения, имя пользователя, само задание и пробел в конце.

Про отладку CRON если задания не выполняются.

Сказать спасибо