Для того чтобы система находилась в максимальной безопасности ее необходимо регулярно обновлять. Программное обеспечение не может быть идеальным и постоянно в нем находят новые проблемы с безопасностью, уязвимости и пути обхода средств защиты. Разработчики достаточно быстро выпускают исправления для своих систем. Но чтобы эти исправления применить, необходимо выполнять обновление.
В этой небольшой статье мы рассмотрим как выполняется обновление системы CentOS 7, как обновить систему до нового релиза, а также как настроить автоматическую установку обновлений.
Содержание статьи
- Обычное обновление CentOS
- Автоматическое обновление CentOS
- Обновление Centos до тестового релиза
- Выводы
Обычное обновление CentOS
Обновление CentOS 7 немного проще, чем у Debian подобных систем, например, Ubuntu. Здесь вам достаточно набрать одну команду, а пакетный менеджер уже сам обновит списки репозиториев и сформирует список пакетов, которые необходимо обновить. Сначала смотрим текущую версию вашей системы:
cat /etc/redhat-release
На производственных серверах перед обновлением рекомендуется выполнить полное резервное копирование системы чтобы в случае непредвиденной ситуации иметь возможность все быстро восстановить. Сделайте резервную копию директорий /etc, /var, /opt. Для систем, запущенных в виртуальных окружениях желательно сделать снапшот. Дальше выполните такую команду для обновления:
yum update
Далее вам необходимо подтвердить обновление, для этого ознакомьтесь со списком пакетов и нажмите "y":
Утилита yum имеет опцию -y, которая указывает, что вы автоматически согласны с изменениями, но ее использовать не рекомендуется. После завершения обновления необходимо перезагрузить сервер:
reboot
Теперь можно снова посмотреть версию:
cat /etc/redhat-release
Как видите, мы очень просто обновились до нового релиза CentOS 7.4 без каких-либо дополнительных настроек и команд. Это очень просто.
Автоматическое обновление CentOS
Обновлением системы могут заниматься различные панели управления, но если панели не установлены в системе есть собственный инструмент для автоматического обновления. Вы даже сможете выбирать, какие обновления вы хотите устанавливать, например, только безопасности, новые возможности, обновления программ или вообще ничего.
Для того чтобы все работало нам нужно установить дополнительный пакет - yum-cron. Для этого наберите такую команду:
yum install yum-cron
Дальше нам нужно его настроить с помощью файла конфигурации /etc/yum/yum-cron.conf:
Первая опция, которую нам нужно настроить - это update_cmd - команда, которой будут выполняться обновления. Доступно несколько вариантов:
- default - полное обновление;
- security - только обновление безопасности;
- security-severity:Critical - только критические обновления безопасности;
- minimal - минимальное обновление с исправлениями ошибок;
- minimal-security - исправления ошибок и обновления безопасности;
- minimal-security-severity:Critical - исправления ошибок и критические обновления.
В моем примере я буду использовать полное обновление. Рассмотрим другие настройки:
- update_messages - выводить сообщения про доступные обновления;
- download_updates - загружать обновления автоматически;
- apply_updates - устанавливать обновления автоматически;
В секции emitters вы можете настроить возможные способы отправки сообщений о доступном обновлении, например, в stdout или по электронной почте.
Опция emit_via указывает каким образом нужно отправлять сообщения. По умолчанию установлено stdout, но вы можете заменить этот параметр на email. Дальше нужно настроить параметры электронной почты в секции email:
- email_from - отправитель;
- email_to - куда отправлять;
- email_host - имя хоста, на котором запущен почтовый сервер.
На завершение настройки вам необходимо запустить службу автоматического обновления CentOS 7:
systemctl start yum-cron
Также добавьте ее в автозагрузку:
systemctl enable yum-cron
Теперь обновление системы CentOS 7 будет выполняться автоматически.
Обновление Centos до тестового релиза
Не так давно версия CentOS 7.4 была доступна только в виде тестового релиза и вы не могли обновиться до нее стандартным способом. Перед тем, как выпустить финальный релиз, разработчики создают репозиторий Continuous Release и в нем выполняется разработка, исправление ошибок и другие действия. Не рекомендуется использовать этот репозиторий на производственных серверах, иначе он может все сломать. Но вы можете обновить свою домашнюю систему для тестирования. Для этого выполните команду:
yum upgrade --enablerepo=cr
После этого до обычного обновления системы будет подключен тестовый репозиторий.
Выводы
В этой статье мы рассмотрели как выполняется обновление CentOS через консоль. Как видите, это не так сложно, как кажется на первый взгляд. Вам достаточно выполнить всего лишь одну команду. Если у вас остались вопросы, спрашивайте в комментариях!
Доброго времени суток! Из всего понял что бы обновить CentOS 7 необходимо всего на всего использовать одну команду [code]yum update[/code]. НАсколько я понимаю Ubuntu необходимо ввести две командны [code]sudo apt-get upgrade [/code] [code]sudo apt-get update [/code]. Правильно ли я понял?
Не совсем. В рамках 7 версии в CentOS используется система роллинг-релизов. Обновляя систему с помощью yum update вы получаете самую новую версию ОС. В Ubuntu же используются фиксированные релизы. Это значит что в рамках одного релиза вы получаете только обновления безопасности. Чтобы обновиться до следующего релиза надо использовать другие команды.
Подскажите, как можно обновить systemd на более новую версию?
Centos: CentOS Linux release 7.5.1804 (Core)
Спасибо!
7 больше не поддерживается. Стандартный репозиторий не пингуется. Хорошо бы дополнить статью ссылками на альтернативные репозитории.