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 |
После этого система не будет самостоятельно проверять наличие, загружать и предлагать устанавливать обновления. Не стоит отключать данный механизм без весомых оснований.