Что такое dnf в linux

Что такое dnf в linux

Команда dnf предназначена для работы с одноименной утилитой, которая используется для управлении пакетами программного обеспечения в дистрибутивах RHEL, CentOS, а также Fedora Workstation (в первых двух дистрибутивах она пока не используется по умолчанию). Данная утилита пришла на смену широко известной утилите yum из-за проблем с производительностью и потреблением памяти последней. На сегодняшний день утилита dnf обладает всеми возможностями утилиты yum и является ее полноценной заменой, менее требовательной к ресурсам системы.

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

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

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

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

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

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

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

# systemctl disable dnf-makecache.service
# systemctl disable dnf-makecache.timer

Читайте также:  What is kali linux graphical install

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

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

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

Примеры использования

Установка пакета программного обеспечения

Для установки пакета программного обеспечения достаточно просто использовать команду install:

# dnf install midori Последняя проверка окончания срока действия метаданных: 1:17:29 назад, Пн 31 июл 2017 17:36:45. Зависимости разрешены. ================================================================================ Пакет Архитектура Версия Репозиторий Размер ================================================================================ Установка: midori x86_64 0.5.12-0.2.fc26 fedora 1.3 M Результат транзакции ================================================================================ Установка 1 Пакет Объем загрузки: 1.3 M Объем изменений: 6.2 M Продолжить? [д/Н]: y Загрузка пакетов: midori-0.5.12-0.2.fc26.x86_64.rpm 621 kB/s | 1.3 MB 00:02 -------------------------------------------------------------------------------- Общий размер 277 kB/s | 1.3 MB 00:04 Проверка транзакции Проверка транзакции успешно завершена. Идет проверка транзакции Тест транзакции проведен успешно Выполнение транзакции Подготовка : 1/1 Установка : midori-0.5.12-0.2.fc26.x86_64 1/1 Запуск скриплета: midori-0.5.12-0.2.fc26.x86_64 1/1 Проверка : midori-0.5.12-0.2.fc26.x86_64 1/1 Установлено: midori.x86_64 0.5.12-0.2.fc26 Выполнено!

Удаление пакета программного обеспечения

Удаление пакета программного обеспечения осуществляется с помощью команды remove:

# dnf remove midori Зависимости разрешены. ================================================================================ Пакет Архитектура Версия Репозиторий Размер ================================================================================ Удаление: midori x86_64 0.5.12-0.2.fc26 @fedora 6.2 M Результат транзакции ================================================================================ Удаление 1 Пакет Освобожденное место: 6.2 M Продолжить? [д/Н]: y Проверка транзакции Проверка транзакции успешно завершена. Идет проверка транзакции Тест транзакции проведен успешно Выполнение транзакции Подготовка : 1/1 Удаление : midori-0.5.12-0.2.fc26.x86_64 1/1 Запуск скриплета: midori-0.5.12-0.2.fc26.x86_64 1/1 Проверка : midori-0.5.12-0.2.fc26.x86_64 1/1 Удален: midori.x86_64 0.5.12-0.2.fc26 Выполнено!

Поиск пакета программного обеспечения

Поиск пакета программного обеспечения осуществляется с помощью команды search. Также вместе с ней может использоваться параметр -C для отказа от обновления метаданных:

# dnf -C search midori Последняя проверка окончания срока действия метаданных: 1:09:54 назад, Пн 31 июл 2017 17:36:45. ========================= Имя Exactly Matched: midori ========================== midori.x86_64 : A lightweight GTK+ web browser midori.i686 : A lightweight GTK+ web browser

Обновление пакетов программного обеспечения

Для установки всех обновлений системы достаточно использовать команду update:

# dnf update Последняя проверка окончания срока действия метаданных: 1:24:50 назад, Пн 31 июл 2017 17:36:45. Зависимости разрешены. Отсутствуют действия для выполнения Выполнено!

Источник

Читайте также:  Linux samba server windows 10

Using the DNF software package manager

DNF is a software package manager that installs, updates, and removes packages on Fedora and is the successor to YUM (Yellow-Dog Updater Modified). DNF makes it easy to maintain packages by automatically checking for dependencies and determines the actions required to install packages. This method eliminates the need to manually install or update the package, and its dependencies, using the rpm command. DNF is now the default software package management tool in Fedora.

Usage

dnf can be used exactly as yum to search, install or remove packages.

To search the repositories for a package type:

Other common DNF commands include:

  • autoremove — removes packages installed as dependencies that are no longer required by currently installed programs.
  • check-update — checks for updates, but does not download or install the packages.
  • downgrade — reverts to the previous version of a package.
  • info — provides basic information about the package including name, version, release, and description.
  • reinstall — reinstalls the currently installed package.
  • upgrade — checks the repositories for newer packages and updates them.
  • exclude — exclude a package from the transaction.

For more DNF commands refer to the man pages by typing man dnf at the command-line, or DNF Read The Docs

Automatic Updates

The dnf-automatic package is a component that allows automatic download and installation of updates. It can automatically monitor and report, via e-mail, the availability of updates or send a log about downloaded packages and installed updates.

For more information, refer to the Read the Docs: DNF-Automatic page.

System Upgrades

The Fedora system can be upgraded directly with DNF, or with the DNF system upgrade plugin. Refer to the DNF System Upgrade document for more details.

Language Support Using DNF

DNF can be used to install or remove Language Support. A detailed description with a list of available languages can be found on Language Support Using Dnf page.

Читайте также:  Сэм алапати современное администрирование linux 2016

Plugins

The core DNF functionality can be extended with plugins. There are officially supported Core DNF plugins and also third-party Extras DNF Plugins. To install them, run

# dnf install dnf-plugins-core-PLUGIN_NAME
# dnf install dnf-plugins-extras-PLUGIN_NAME

Excluding Packages From Transactions

Sometimes it is useful to ignore specific packages from transactions, such as updates. One such case, for example, could be when an update includes a regression or a bug. DNF allows you to exclude a package from the transaction:

sudo dnf upgrade --exclude=packagename

You can add a line to /etc/dnf/dnf.conf to exclude packages:

This can also be added to the specific repository configuration files in /etc/yum.repos.d/ . Globs may be used here to list multiple packages, and each specification must be separated by a comma. If you have used this configuration, you can disable it in individual DNF commands using using the —disableexcludes command line switch.

If you use a GUI update application which does not allow you to specify packages to exclude when they run, this method can be used.

Using the DNF Versionlock plugin

You can also use the DNF versionlock plugin to limit the packages that are included in a transaction. It allows you to list what versions of particular packages should be considered in a transaction. All other versions of the specified packages will be ignored. The plugin is part of dnf-plugins-core package and can be installed using the command below:

sudo dnf install 'dnf-command(versionlock)'

To lock the currently installed version of a package, use:

sudo dnf versionlock add package

To remove the version lock, use:

sudo dnf versionlock delete package

The list command can be used to list all locked packages, while the clear command will delete all locked entries.

References

All Fedora Documentation content available under CC BY-SA 4.0 or, when specifically noted, under another accepted free and open content license.

Fedora Logo

Last build: 2023-07-13 13:50:17 UTC | Last content update: 2022-10-15

Источник

Оцените статью
Adblock
detector