Сразу оговорюсь… Автообновление на серверах в продакшене без контроля со стороны администратора — это плохо. Не делайте так.
А если всё же решились на это, или если у вас есть серверы, на которых автообновление критично, настройте автоматическую установку только обновлений безопасности, а всё остальное обновляйте вручную по мере возможности. В CentOS 7 автообновление настраивается с помощью утилиты yum-cron.
Ставим утилиту:
yum install yum-cron
Открываем конфиг /etc/yum/yum-cron.conf и обращаем внимание не следующие пункты…
Какие обновления мы будем устанавливать автоматически:
# What kind of update to use: # 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 = --sec-severity=Critical update-minimal update_cmd = default
Для установки только обновлений безопасности, я обычно указываю здесь:
update_cmd = security
Все остальные доступные обновления пропускаются и их можно установить позже, вручную, контролируя процесс. Для того что бы не только скачать, но и установить обновления необходимо включить соответствующие пункты в конфиге:
download_updates = yes apply_updates = yes
Разумеется, необходимо так же настроить уведомление о том что обновления доступны и о том что они были установлены. Для этого:
emit_via = email email_from = robot@sysadmin.pm email_to = pm@sysadmin.pm email_host = localhost
Остаётся только включить соответствующий сервис и обновления нужного типа будут устанавливаться в систему автоматически.
systemctl enable yum-cron systemctl start yum-cron