
Поддержание системы CentOS в актуальном состоянии с помощью последних обновлений безопасности — один из важнейших факторов общей безопасности системы. Если вы не обновляете пакеты операционной системы до последних исправлений безопасности, ваш компьютер будет уязвим для атак.
Рекомендуемый подход — автоматизировать обновления с помощью yum-cron . Другой вариант — обновить систему вручную.
В этом руководстве мы покажем вам, как вручную обновить системные пакеты в CentOS 7. Те же инструкции применимы и для CentOS 6.
Предпосылки
Для установки и обновления пакетов вам необходимо войти в систему как пользователь root или с привилегиями sudo .
Обновление пакетов на CentOS
RPM — это система пакетов, используемая Red Hat и ее производными, такими как CentOS.
Yum — это менеджер пакетов по умолчанию в CentOS. Он используется для установки, удаления, загрузки, поиска и обновления пакетов из официальных репозиториев CentOS, а также из сторонних репозиториев.
Перед запуском обновления вы можете проверить наличие доступных обновлений с помощью следующей команды:
sudo yum check-update
Вывод будет содержать список всех пакетов, доступных для обновления:
Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: centos.s.uw.edu * centos-sclo-rh: centos.s.uw.edu * centos-sclo-sclo: centos.s.uw.edu * epel: mirror.cherryservers.com * extras: centos.s.uw.edu * updates: centos.s.uw.edu bind-libs-lite.x86_64 32:9.9.4-74.el7_6.2 updates bind-license.noarch 32:9.9.4-74.el7_6.2 updates curl.x86_64 7.29.0-51.el7_6.3 updates device-mapper.x86_64 7:1.02.149-10.el7_6.8 updates device-mapper-event.x86_64 7:1.02.149-10.el7_6.8 updates device-mapper-event-libs.x86_64 7:1.02.149-10.el7_6.8 updates device-mapper-libs.x86_64 7:1.02.149-10.el7_6.8 updates
Чтобы обновить один пакет, используйте команду yum install указав после неё имя пакета, который нужно обновить. Например, чтобы обновить только пакет curl , выполните:
sudo yum install curl
Yum выведет список пакетов, которые будут обновлены, и запросит подтверждение. Ответьте y , и пакеты будут обновлены.
Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Updating: curl x86_64 7.29.0-51.el7_6.3 updates 269 k Updating for dependencies: libcurl x86_64 7.29.0-51.el7_6.3 updates 222 k Transaction Summary ================================================================================ Upgrade 1 Package (+1 Dependent package) Total download size: 492 k Is this ok [y/d/N]:
Для обновления всех пакетов используйте команду yum update :
sudo yum update
Команда обновит репозитории и выведет список всех пакетов, которые можно обновить. В ответ на запрос введите y для продолжения.
Запретить обновление пакетов
Иногда может потребоваться ограничить обновление пакета до новой версии. Плагин Yum versionlock позволяет заблокировать пакеты на определённой версии.
Плагин не установлен по умолчанию, поэтому сначала вам необходимо его установить:
sudo install yum-plugin-versionlock
Во время установки в вашей системе будут созданы два файла конфигурации, которые будут храниться в каталоге /etc/yum/pluginconf.d . Файл конфигурации versionlock.conf и файл versionlock.list , содержащий заблокированные пакеты. По умолчанию в этом файле нет списка пакетов.
Чтобы заблокировать версию пакета, вы можете вручную добавить имя пакета в файл или использовать команду yum versionlock указав после неё имя пакета. Например, чтобы запретить обновление всех пакетов PHP (всех пакетов, начинающихся с «php-»), выполните:
sudo yum versionlock php-*
Это заблокирует пакеты PHP на текущей версии.
Просмотр журналов Yum
История пакетов, установленных и обновленных с помощью yum регистрируется в файле /var/log/yum . Вы можете просмотреть последние записи с помощью команд cat или tail :
sudo tail /var/log/yum.log
Вывод будет включать записи об установках и обновлениях пакетов:
Jul 23 16:00:04 Installed: 7:squid-3.5.20-12.el7_6.1.x86_64 Jul 31 22:27:16 Updated: libcurl-7.29.0-51.el7_6.3.x86_64 Jul 31 22:27:16 Updated: curl-7.29.0-51.el7_6.3.x86_64
Заключение
Установка обновлений и поддержание системы CentOS в актуальном состоянии довольно просты, но если вы управляете несколькими компьютерами CentOS, это может занять много времени, и иногда вы можете пропустить важное обновление. Лучший вариант — настроить автоматическое обновление.
Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии.
Связанные руководства
- Настройка автоматического обновления с помощью yum-cron на CentOS 7
- Как включить репозиторий EPEL в CentOS
- Как составить список установленных пакетов в CentOS
- Как установить Apache Maven на CentOS 8
- Как установить Vagrant на CentOS 8
- Как установить CouchDB на CentOS 8
- Как установить Yarn на CentOS 8