Yum (Yellowdog Updater Modified) — пакетный менеджер для RPM-дистрибутивов Linux: CentOS, RHEL, Fedora, Amazon Linux. Работает с репозиториями и автоматически разрешает зависимости. Начиная с Fedora 22 (2015) и RHEL 8 (2019) заменён более быстрым DNF (Dandified YUM), который обратно совместим с Yum — большинство команд работают одинаково.
Основные команды
# Установка пакета
yum install nginx
# Обновление системы
yum update
# Поиск пакета
yum search php
# Информация о пакете
yum info mysql-server
# Удаление
yum remove nginx
# Список установленных
yum list installed
# Очистка кэша
yum clean all
Репозитории
Конфигурация репозиториев хранится в /etc/yum.repos.d/*.repo. Пример для EPEL (Extra Packages for Enterprise Linux):
yum install epel-release # для CentOS/RHEL
# после этого доступны тысячи дополнительных пакетов
Для PHP 8.x на CentOS/AlmaLinux используется репозиторий Remi: yum install remi-release, затем yum module enable php:remi-8.2.
История
Yum разработан Сетом Видалем (Seth Vidal) в 2002–2003 годах для дистрибутива Yellow Dog Linux на базе RHEL. Широко распространился с CentOS 3/4 (2004–2005). В 2015 году в Fedora 22 Yum заменён на DNF как более быстрый и корректный с точки зрения разрешения зависимостей (алгоритм SAT-solver vs. tsort в Yum). В RHEL 8 (2019) DNF стал официальным, Yum — симлинк на DNF. CentOS 7 (поддержка до 2024 года) — последний крупный дистрибутив с «настоящим» Yum.
Yum vs DNF vs APT
| Параметр | Yum | DNF | APT |
|---|---|---|---|
| Дистрибутивы | CentOS 7, RHEL 7 | RHEL 8+, Fedora 22+ | Debian, Ubuntu |
| Скорость | Медленнее | Быстрее | Быстрее |
| Python | Python 2 | Python 3 | C + Python |
| Плагины | Да (yum-plugin-*) | Да (dnf-plugin-*) | Да |
На что обращать внимание
Если вы работаете на CentOS 7 (поддержка завершена в июне 2024 года) — срочно мигрируйте на AlmaLinux 9 или Rocky Linux 9 и переходите на DNF. На Amazon Linux 2 используется Yum; Amazon Linux 2023 перешёл на DNF. Файл конфигурации Yum: /etc/yum.conf — здесь настраивается кэш, proxy, exclude-список пакетов. Для блокировки автообновлений конкретного пакета: yum versionlock nginx (требует плагин yum-plugin-versionlock).
История Yum
Yum создан Сетом Видом (Seth Vidal) в проекте Yellowdog Linux в 2001–2003 годах как надстройка над rpm для автоматического разрешения зависимостей. Yellowdog Linux (YDL) был дистрибутивом для PowerPC (Macintosh G3/G4). Red Hat включила Yum в RHEL 4 (2005), сделав его стандартом для RPM-систем. Yum 3.x стал стандартом на 10+ лет. В 2015 году команда Fedora выпустила DNF (Dandified YUM) — полное переписывание с libdnf на C. RHEL 8 (2019) полностью перешёл на DNF; команда yum стала алиасом.
Yum vs DNF: основные отличия
| Параметр | Yum | DNF |
|---|---|---|
| Язык | Python 2/3 | C/Python 3 (libdnf) |
| Скорость | Медленнее | Быстрее (нативный resolver) |
| Потребление RAM | ~200–400 МБ | ~50–100 МБ |
| Dependency resolver | Python (медленный) | HAWKEY (libdnf, быстрый) |
| Модульность (RHEL 8+) | Нет | Да (dnf module) |
На что обращать внимание
На CentOS 7 и RHEL 7 используется Yum 3.x. На AlmaLinux 8/9, Rocky Linux 8/9, RHEL 8/9 — DNF, но команда yum работает как алиас. Конфиг Yum: /etc/yum.conf — настройка кэша, proxy, exclude-пакетов. Для блокировки версии пакета: yum versionlock nginx (плагин yum-plugin-versionlock). CentOS 7 достигает EOL в июне 2024 — обновляйтесь на AlmaLinux или Rocky Linux.