Cron – планировщик заданий FreeBSD

Основной конфигурационый файл планировщика, находится в /etc/crontab
Cron это программа, выполняющая задания по расписанию. Позволяет неоднократный запуск заданий. Т.е. задание можно запустить в определенное время или через определенный промежуток времени

В целом имеет такой синтаксис —

Дефолтный конфигурационный файл /etc/crontab выглядит таким образом:

# root's crontab
#
# В первую очередь прописываются переменные окружения
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#
# А с этого места начинаются задания, но для начала в качестве подсказки,
# описания что означает каждый столбец
#
#[мин][час][числа][месяц][дни_недели][юзер][команда]
#

# Следущая команда раз в пять минут создает такой себе
# "список отложенных задач". Подробнее: man atrun
*/5 * * * * root /usr/libexec/atrun

# А это задание заставляет один раз в час
# "проснуться" программу newsyslog которая,
# если нужно, ротирует (сжимает) лог файлы
0 * * * * root newsyslog

# Ну, а это задания, касающиеся ежесуточного аудита системы.
# По выполнении этих заданий на почту root приходят письма с
# отчетом что нового произошло на сервере за последние сутки.
01 3 * * * root periodic daily
15 4 * * 6 root periodic weekly
30 5 1 * * root periodic monthly

# Два раза в час происходит корректировка системных часов.
#1,31 0-5 * * * root adjkerntz -a

Это файл конфигурации по-умолчанию для Вашего cron’а. В него по аналогии можно добавить любые другие задания и крон тут же (после того, как Вы сохраните этот файл) примет их к сведению.

При редактировании crontab между колонками должен быть минимум один пробел, либо одна табуляция. Имя пользователя указывать необязательно. Если имя пользователя не указано, команду или скрипт крон выполнит от имени пользователя root.
Кроме root’ового crontab, существуют также пользовательские. Хранятся они в каталоге /var/cron/tabs/. Названия crontab файлов совпадают с именами пользователей, которым они принадлежат. Здесь также может находиться еще один crontab файл пользователя root, сгенерированный командой crontab -e. Все задания, указанные в crontab’ах каталога /var/cron/tabs/ выполняются cron’ом от имени того пользователя, что их создал. В пользовательском crontab нельзя опционально указать имя пользователя, от которого будет запускаться задание. Если crontab принадлежит пользователю soulbrat, то только от имени soulbrat (и с его правами) будут выполняться все команды в нем.

Чтобы создать или отредактировать собственный пользовательский crontab со списком запланированных заданий, выполните команду:

$ crontab -e

 

При этом откроется Ваш редактор по-умолчанию (прописанный в переменной окружения EDITOR), в котором Вы сможете отредактировать свой crontab. Его формат будет полностью аналогичен /etc/crontab, за исключением столбца «имя пользователя» — его не будет. После редактирования сохраните файл и выйдите из редактора. Для просмотра Ваших запланированных заданий выполните команду.

$ crontab -l

 

Пользователь root также имеет возможность использовать данную утилиту с ключом -u [имя пользователя], для просмотра и внесения изменений в пользовательские crontab файлы

% crontab -l -u soulbrat
#
# Crontab configuration file for soulbrat
#
SHELL=/bin/sh
PATH=/bin:/usr/bin:/usr/local/bin
HOME=/home/soulbrat
#
00 01 * * * ~/some-script.sh
#

Использование запланированных заданий обычно позволяет в немалой степени автоматизировать работу некоторых процессов в системе.

При копировании статьи, ссылка на источник обязательна!

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Язык
Страницы
Рекомендую