Пакетный менеджер Dandified YUM (Fedora / RHEL)

dnf (Dandified YUM) предназначена для работы с одноименной утилитой, которая используется для управлении пакетами программного обеспечения.

DNF (Dandified YUM) пришел на смену широко известной утилите yum из-за проблем с производительностью и потреблением памяти последней. На сегодняшний день утилита dnf обладает всеми возможностями утилиты yum и является ее полноценной заменой, менее требовательной к ресурсам системы.

Вы можете использовать dnf для установки и удаления пакетов программного обеспечения из вашей системы (группами или по одному), а также обновления системных списков пакетов программного обеспечения из подключенных на данный момент репозиториев.

Базовый синтаксис команды выглядит следующим образом:

# dnf [параметры] [команда] имена-пакетов-или-групп

Утилита поддерживает большое количество команд и параметров:

  • Параметр --skip-broken, позволяющий пропускать пакеты с проблемами зависимостей.
  • Параметр --allowerasing, позволяющий удалять пакеты для разрешения зависимостей.
  • Параметр --cacheonly (или -C), позволяющий использовать кэшированные метаданные без их обновления.
  • Параметры --assumeyes (или -y) и --assumeno, позволяющие автоматически отвечать утвердительно или отрицательно на все вопросы утилиты.
  • Параметры --enablerepo и --disablerepo, позволяющие активировать и деактивировать указанный репозиторий.
  • Параметр --exclude (или -x), позволяющий исключить из рассмотрения пакет с указанным именем. 

Основными командами являются:

Команда      Назначение
install Установка пакета с заданным именем
reinstall Переустановка пакета с заданным именем

update

upgrade

Обновление пакета с заданным именем

remove

erase

Удаление пакета с заданным именем
autoremove Удаление осиротевших пакетов
info Получение информации о пакете с заданным именем
provides Получение имени пакета, в котором имеется файл с заданным именем
search Поиск пакетов с заданным словом в имени
list Вывод имен всех доступных и установленных пакетов
list installed Вывод списка всех установленных пакетов
list available Вывод списка всех доступных пакетов
repolist Вывод списка подключенных репозиториев
repolist all Вывод списка всех репозиториев
clean all Удаление всех метаданных
history Вывод истории использования dnf
groupunstall Установка всех пакетов из группы с заданным именем
groupupdate Обновление всех пакетов из группы с заданным именем
groupremove Удаление всех пакетов из группы с заданным именем
grouplist Вывод имен всех существующих групп пакетов

Автоматическая загрузка обновлений

В дистрибутиве Fedora Workstation dnf используется также для автоматической загрузки обновлений системы. Если вам не нужна эта функция (например, вы привыкли устанавливать обновления вручную или используете сетевое соединение с ограничением по трафику), вы можете деактивировать ее следующим образом.

В первую очередь следует деактивировать соответствующие службу и таймер systemd:

# systemctl disable dnf-makecache.service

# systemctl disable dnf-makecache.timer

Далее нужно отключить механизм автоматической загрузки обновлений на уровне службы packagekitd:

$ gsettings set org.gnome.software download-updates false

После этого система не будет самостоятельно проверять наличие, загружать и предлагать устанавливать обновления. Не стоит отключать данный механизм без весомых оснований.


DNF является ответвлением от Yum 3.4, адаптированным для работы с Python 3.