dnf (Dandified YUM) — пакетный менеджер для RPM‑based дистрибутивов Linux: Fedora (начиная с версии 22), CentOS 8+, RHEL 8+ и др. Пришёл на смену yum, отличается улучшенной производительностью и более точным разрешением зависимостей. Работает с репозиториями, автоматически устанавливает необходимые зависимости.
Основные команды dnf с примерами
Общий синтаксис:
sudo dnf <команда> [опции] [аргументы]
- Обновить кэш репозиториев (обязательно перед установкой/обновлением):
sudo dnf makecache
# или
sudo dnf check-update- Поиск пакета по имени или описанию:
dnf search <ключевое_слово>
Пример:
dnf search tigervnc- Просмотр информации о пакете:
dnf info <имя_пакета>
Пример:
dnf info tigervnc-server- Установка пакета:
sudo dnf install <имя_пакета>
Примеры:
sudo dnf install tigervnc-server
sudo dnf install htop vim- Обновление системы:
- Обновить все пакеты:
sudo dnf upgrade
# или
sudo dnf update- Обновить конкретный пакет:
sudo dnf upgrade <имя_пакета>
- Удаление пакета:
sudo dnf remove <имя_пакета>
Пример:
sudo dnf remove tigervnc-server- Очистка неиспользуемых зависимостей (освобождает место):
sudo dnf autoremove- Просмотр списка установленных пакетов:
dnf list installedС фильтром по названию:
dnf list installed | grep <ключевое_слово>
- Показать доступные обновления:
dnf list updates- Просмотр истории операций (установка, удаление):
dnf history- Работа с группами пакетов (набор пакетов для определённой задачи):
- Показать доступные группы:
dnf group list- Установить группу (например, «Development Tools»):
sudo dnf group install "Development Tools"- Просмотр зависимостей пакета:
dnf deplist <имя_пакета>
Пример:
dnf deplist vim-common- Очистка кэша (метаданные, скачанные пакеты):
sudo dnf clean all- Просмотр активных репозиториев:
dnf repolisПоказать все (включая отключённые):
dnf repolist allПолезные опции
-y— автоматическое подтверждение действий (например,sudo dnf -y install <пакет>);--nogpgcheck— пропустить проверку GPG‑подписи (использовать осторожно, только для доверенных источников);--enablerepo=<репозиторий>— временно включить указанный репозиторий для одной операции;history rollback <ID>— откатить действие по ID из истории (dnf history).
Важные замечания
- Большинство команд требуют прав суперпользователя (
sudo). - Перед установкой или обновлением всегда обновляйте кэш (
sudo dnf makecacheилиsudo dnf check-update). - Команда
dnf autoremoveудаляет пакеты, которые были установлены как зависимости и больше не нужны. dnfавтоматически разрешает зависимости — если пакет требует библиотек, они будут установлены.