dnf

dnf

dnf (Dandified YUM) — пакетный менеджер для RPM‑based дистрибутивов Linux: Fedora (начиная с версии 22), CentOS 8+, RHEL 8+ и др. Пришёл на смену yum, отличается улучшенной производительностью и более точным разрешением зависимостей. Работает с репозиториями, автоматически устанавливает необходимые зависимости.

Основные команды dnf с примерами

Общий синтаксис:

sudo dnf <команда> [опции] [аргументы]
  1. Обновить кэш репозиториев (обязательно перед установкой/обновлением):
sudo dnf makecache
# или
sudo dnf check-update
  1. Поиск пакета по имени или описанию:
dnf search <ключевое_слово>

Пример:

dnf search tigervnc
  1. Просмотр информации о пакете:
dnf info <имя_пакета>

Пример:

dnf info tigervnc-server
  1. Установка пакета:
sudo dnf install <имя_пакета>

Примеры:

sudo dnf install tigervnc-server
sudo dnf install htop vim
  1. Обновление системы:
  • Обновить все пакеты:
sudo dnf upgrade
# или
sudo dnf update
  • Обновить конкретный пакет:
sudo dnf upgrade <имя_пакета>
  1. Удаление пакета:
sudo dnf remove <имя_пакета>

Пример:

sudo dnf remove tigervnc-server
  1. Очистка неиспользуемых зависимостей (освобождает место):
sudo dnf autoremove
  1. Просмотр списка установленных пакетов:
dnf list installed

С фильтром по названию:

dnf list installed | grep <ключевое_слово>
  1. Показать доступные обновления:
dnf list updates
  1. Просмотр истории операций (установка, удаление):
dnf history
  1. Работа с группами пакетов (набор пакетов для определённой задачи):
  • Показать доступные группы:
dnf group list
  • Установить группу (например, «Development Tools»):
sudo dnf group install "Development Tools"
  1. Просмотр зависимостей пакета:
dnf deplist <имя_пакета>

Пример:

dnf deplist vim-common
  1. Очистка кэша (метаданные, скачанные пакеты):
sudo dnf clean all
  1. Просмотр активных репозиториев:
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 автоматически разрешает зависимости — если пакет требует библиотек, они будут установлены.