Yum-cron - автоматическое обновление RHEL7 и CentOS 7

Пакет yum-cron используется для автоматического обновления операционных систем RHEL7 и CentOS 7. Помимо автоматического обновления yum-cron можно настроить только на оповещение о наличии обновлений (мониторинг) и предварительной загрузки обновляемых пакетов.

Утилита yum-cron написана на языке программирования Pyton.

Установка yum-cron

Установить yum-cron можно следующим образом:

# yum install yum-cron

Команды проверки состояния и запуска сервиса yum-cron:

# systemctl status yum-cron.service
# systemctl start yum-cron.service

Запускать сервис yum-cron, желательно, только после предварительной настройки.

Путь к утилите: /usr/sbin/yum-cron.

Найти все связанные файлы можно такой командой:

# rpm -ql yum-cron

После установки, сервис yum-cron автоматически прописывается в автозагрузку, изменить это можно следующим образом (enable - разрешить автозагрузку, disable - запретить):

# systemctl enable yum-cron.service
# systemctl disable yum-cron.service

Настройка yum-cron

Основная настройка yum-cron осуществляется в файле: /etc/yum/yum-cron.conf. Действия, заданные в yum-cron.conf будут выполняться один раз в сутки. Существует и второй файл конфигурации: /etc/yum/yum-cron-hourly.conf, синтаксис которого идентичен yum-cron.conf, но в отличие от первого файла, как следует из части его названия: "hourly", указания будут выполняться один раз в час. Структура и синтаксис обеих файлов - одинаков.

Основное назначение yum-cron - мониторинг наличия обновлений для CentOS 7 или RHEL7 и оповещение администратора по email. Автоматически обновлять систему - не есть хорошая идея, так как чем больше установлено программ, тем больше шанс, что после очередного автообновления что-то перестанет работать.

Параметры yum-cron.conf

Все параметры разделены на несколько секций: commands, emitters, email, groups, base. Каждое название секции заключено в квадратные скобки: [commands].

Секция [commands]

update_cmd

Параметр update_cmd указывает, какой тип обновлений будет применен, и может принимать одно из значений, описанных ниже:

Параметр update_cmd Как будет запущен yum
default yum upgrade
security yum --security upgrade
security-severity:Critical yum --sec-severity=Critical upgrade
minimal yum --bugfix update-minimal
minimal-security yum --security update-minimal
minimal-security-severity:Critical yum --sec-severity=Critical update-minimal

По умолчанию установлен параметр default:

update_cmd = default

Эта настройка обозначает, что в случае обновления yum будет запущен так: yum upgrade, т.е. будут обновлены все пакеты.

update_messages

Настройка update_messages указывает, нужно ли выводить сообщение, можно указать значения: yes или no. update_messages = yes сообщает yum-cron о том, что сообщения выводить нужно.

download_updates

Настройка download_updates отвечает за загрузку обновлений (только загрузка, без установки), и так же, как и update_messages может принимать 2 значения: yes - загружать, no - не загружать. По умолчанию установлено: download_updates = yes

apply_updates

Один из важнейших параметров конфигурационного файла yum-cron.conf - apply_updates, отвечает - применять ли загруженные обновления или нет. Может принимать, соответственно, два значения: yes или no. По умолчанию установлено: apply_updates = no, так как полностью доверять автоматическому обновлению не стоит. Для того, чтобы сработало значение yes - это же значение должно быть установлено и в download_updates, что весьма логично: если обновления не загружены, то их неоткуда устанавливать.

random_sleep

Параметр random_sleep задает генерируемую случайным образом задержку в минутах, между временем запуска утилиты yum-cron и до её исполнения. Если значение random_sleep более 0, то каждый раз после запуска случайным образом выбирается задержка в интервале между 0 и заданным числом минут. Этот параметр служит для предотвращения ситуации, когда множество операционных систем одновременно будут пытаться получить обновление. По умолчанию установлено: random_sleep = 360 (360 минут = 6 часам).

Секция [emitters] (излучатели)

system_name

Параметр system_name служит для записи названия системы, которое будет отображаться в сообщениях. По умолчанию system_name настроено так: system_name = None, что обозначает, что названием будет служить hostname операционной системы. Если вместо None записать имя - то будет отображаться то, что указано в настройке system_name.

emit_via

Параметр emit_via ответственнен за то, куда будет отправлено сообщение, генерируемое yum-cron: в стандартный вывод или на электронную почту, и может принимать, соответственно, только два значения: "stdio" или "email". Если emit_via будет пустым или None, то это аналогично параметру update_messages = no, и в этом случае сообщения выводится не будут. По умолчанию emit_via установлен в emit_via = stdin.

output_width

Ширина сообщения задается параметром output_width, по умолчанию ширина установлена равной 80 символам: output_width = 80.

Секция [email]

email_from

Название параметра email_from говорит само за себя - его назначение указать email отправителя сообщения. Если в названии email оставить слово localhost, то оно будет заменено на значение из параметра system_name. Пример использования: email_from = mail@localhost.

email_to

Значения параметра email_to - адреса электронной почты, на которые будет отослано сообщение yum-cron.

email_host

Имя хоста, с которого будет отправлено сообщение - email_host. По умолчанию установлено: email_host = localhost.

email_port

Параметр email_port отвечает за настройку порта для отправки email. Если не указывать параметр email_port, то будет использован порт по умолчанию - 25.

Опубликовано: 2016/12/25
HTML-код ссылки на эту страницу:
<a href="https://petrenco.com/linux.php?txt=702" target="_blank">Yum-cron - автоматическое обновление RHEL7 и CentOS 7</a>
6035
Добавить комментарий
Ваш e-mail: (не виден посетителям сайта)
Ваше имя:
Комментарий:
Символы с картинки:
Только выделенные поля формы добавления комментариев обязательны к заполнению.