DNF(8)

НАЗВАНИЕ
dnf - Справочник по командам DNF

СИНТАКСИС

dnf [options] <command> [<args>...]

ОПИСАНИЕ

DNF - следующая готовящаяся к выпуску основная версия YUM, менеджера пакетов для дистрибутивов Linux на основе RPM. Он поддерживает совместимость CLI с YUM и определяет строгий API для расширений и плагинов.

Плагины могут изменять или расширять функции DNF или предоставлять дополнительные команды CLI в дополнение к тем, которые указаны ниже. Если вы знаете название такой команды (включая команды, упомянутые ниже), вы можете найти или установить пакет, который предоставляет его, используя соответствующий виртуальный файл в форме dnf-command(<alias>), где <alias> - имя команды для dnf; например``dnf install 'dnf-command(versionlock)'`` устанавливает плагин versionlock.

Возвращаемые значения:

•   0 : Операция прошла успешно.

•   1 : Произошла ошибка, которая была обработана dnf.

•   3 : Во время работы произошла неизвестная необработанная ошибка.

•   100: Смотри check-update

•   200: Проблема захвата и освобождения синхронизирующих замков.

    Доступные команды:

•   alias

•   autoremove

•   check

•   check-update

•   clean

•   deplist

•   distro-sync

•   downgrade

•   group

•   help

•   history

•   info

•   install

•   list

•   makecache

•   mark

•   module

•   provides

•   reinstall

•   remove

•   repoinfo

•   repolist

•   repoquery

•   repository-packages

•   search

•   shell

•   swap

•   updateinfo

•   upgrade

•   upgrade-minimal

•   upgrade-to

    Дополнительная информация:

•   Параметры

•   Указание критериев пакетов

•   Указание точных версий пакетов

•   Указание provides

•   Указание групп

•   Указание транзакций

•   Синхронизация метаданных

•   Политика замены файлов конфигурации

•   Файлы

•   Смотрите также

ОПЦИИ

-4  Разрешать только адреса IPv4.

-6  Разрешать только адреса IPv6.

--advisory=<advisory>, --advisories=<advisory>
    Включает пакеты, соответствующие рекомендуемому идентификатору, например. FEDORA-2201-123. Применимо для команд install, repoquery, updateinfo и upgrade.

--allowerasing
    Разрешать удаление установленных пакетов для разрешения зависимостей. Этот параметр может использоваться в качестве альтернативы команде yum swap, где пакеты для удаления не определены явно.

--assumeno
    Автоматически отвечать нет на все вопросы.

-b, --best
    Пробовать подходящие версии пакетов в транзакциях. В частности, во время обновления dnf upgrade, которое по умолчанию пропускает обновления, которые не могут быть установлены по причинам зависимости, переключатель заставляет DNF рассматривать только самые последние пакеты. При работе с пакетами с нарушенными зависимостями DNF не сможет установить причину, по которой последняя версия не может быть установлена.

--bugfix
    Включает пакеты, которые решают проблему исправления ошибок. Применимо для команд install, repoquery, updateinfo и upgrade.

--bz=<bugzilla>, --bzs=<bugzilla>
    Включает пакеты, которые исправляют идентификатор Bugzilla, например. 123123.Применимо для команд install, repoquery, updateinfo и upgrade.

-C, --cacheonly
    Запуск полностью из системного кэша, не делать обновления кеша и использовать его, даже если срок его действия истек.

    DNF использует отдельный кэш для каждого пользователя, под которым он выполняется. Кеш для пользователя root называется системным кешем. Этот переключатель позволяет обычному пользователю доступ только для чтения к системному кешу, который обычно более свежий, чем у пользователей, и поэтому ему не нужно ждать синхронизации метаданных.

--color=<color>
    Управляет использованием цвета в выводе терминала. Допустимые значения всегда, никогда и авто (по умолчанию).

--comment=<comment>
    Добавляет комментарий в историю транзакций.

-c <config file>, --config=<config file>
    Расположение файла конфигурации.

--cve=<cves>, --cves=<cves>
    Включает пакеты, которые исправляют CVE (общие уязвимости и воздействия) (http://cve.mitre.org/about/), Например. CVE-2201-0123. Применимо для команд install, repoquery, updateinfo, и upgrade.

-d <debug level>, --debuglevel=<debug level>
    Уровень вывода отладки. Это целочисленное значение между 0 (без дополнительных строк информации) и 10 (показывает всю информацию отладки, даже ту, которая не понятна пользователю), по умолчанию 2. Устаревший, используйте вместо этого -v.

--debugsolver
    Дамп данных, способствующий отладке разрешения зависимостей в ./debugdata.

    --disableexcludes=[all|main|<repoid>], --disableexcludepkgs=[all|main|<repoid>] Отключает файл конфигурации искючений. Принимает один из трех следующих вариантов:

•   all, отключает все файлы конфигурации исключений

•   main, отключает исключения, определенные в разделе [main]

•   repoid, отключает исключения, определенные для данного репозитория

--disable, --set-disabled
    Отключает указанные репозитории (автоматическое сохранение). Параметр должен использоваться вместе с командой config-manager (dnf-plugins-core).

--disableplugin=<plugin names>
    Отключает перечисленные плагины, указанные именами или маскамии.

--disablerepo=<repoid>
    Отключает определенные репозитории по идентификатору или маске. Этот параметр является взаимоисключающим с --repo.

--downloaddir=<path>, --destdir=<path>
    Перенаправляет загруженные пакеты в указанный каталог. Этот параметр должен использоваться вместе с параметром командной строки --downloadonly, с командой download (dnf-plugins-core) или с командой system-upgrade (dnf-plugins-extras).

--downloadonly
    Загружает разрешенные пакеты без выполнения каких-либо транзакций rpm (install/upgrade/erase).

-e <error level>, --errorlevel=<error level>
    Уровень вывода ошибок. Это целочисленное значение между 0 (без вывода ошибок) и 10 (показывает все сообщения об ошибках), по умолчанию 3. Устаревший, используйте вместо этого -v.

--enable, --set-enabled
    Включает указанные репозитории (автоматическое сохранение). Параметр должен использоваться вместе с командой config-manager (dnf-plugins-core).

--enableplugin=<plugin names>
    Включает перечисленные плагины, указанные именами или маскамии.

--enablerepo=<repoid>
    Включает определенные репозитории по идентификатору или маске.

--enhancement
    Включает пакеты связанные с улучшениями. Применимо для команд install, repoquery, updateinfo и upgrade.

-x <package-file-spec>, --exclude=<package-file-spec>
    Исключает из операции пакеты, указанные в файле <package-file-spec>.

--excludepkgs=<package-file-spec>
    Устаревший вариант. Он был заменен параметром --exclude.

--forcearch=<arch>
    Принудительное использование архитектуры. Может быть указана любая архитектура. Однако использование архитектуры, которая изначально не поддерживается вашим процессором, потребует некоторой эмуляции. Обычно это через QEMU. Поведение --forcearch можно настроить с помощью использования параметров конфигурации arch и ignorearch со значениями <arch> и True соответственно.

-h, --help, --help-cmd
    Показывает справку.

--installroot=<path>
    Определяет альтернативный installroot относительно того, где будут установлены все пакеты. Рассматривать это как выполнение chroot <root> dnf, кроме использования --installroot, позволяющего dnf работать до создания chroot. Это требует абсолютного пути.

•   cachedir, log files, releasever, и gpgkey берутся из или хранятся в installroot. Gpgkeys импортируются в installroot из соответствующего пути хоста, который может быть указан в разделе конфигурационных файлов репозитория.

•   configuration file и reposdir сначала ищутся внутри installroot. Если их нет, они берутся из системы хоста. Примечание: если путь указан в аргументе командной строки (--config=<config file> в случае configuration file и --setopt=reposdir=<reposdir> для reposdir) тогда этот путь будет всегда по отношению к хосту без каких-либо исключений.

•   vars взяты из системы хоста или installroot в соответствии с reposdir installroot. Когда пути varsdir указаны в командной строке аргументом (--setopt=varsdir=<reposdir>) то эти пути всегда относительно хоста без исключений.

•   pluginpath и pluginconfpath относительные к хосту. Примечание: вы также можете использовать параметр командной строки --releasever=<release> при создании installroot, в противном случае $releasever берется из rpmdb в пределах installroot (и поэтому на момент создания он пуст и транзакция не удастся). Если используется --releasever=/, releasever будет обнаружен в системе хоста (/). Новый путь installroot во время создания не содержит файлов repository, releasever и dnf.conf.

    В модульной системе вы также можете использовать параметр командной строки --setopt=module_platform_id=<module_platform_name:stream> при создании installroot, в противном случае значение module_platform_id будет взято из файла /etc/os-release в пределах installroot (и поэтому он будет пустым во время создания, модульная зависимость может быть неудовлетворена, а содержимое модулей может быть исключено).

    Примеры installroot:

dnf --installroot=<installroot> --releasever=<release> install system-release
    Навсегда устанавливает releasever системы в каталог <installroot> в <release>.

dnf --installroot=<installroot> --setopt=reposdir=<path> --config /path/dnf.conf upgrade
    Обновляет пакеты внутри installroot из репозитория, описанного в --setopt, используя конфигурацию из /path/dnf.conf.

--newpackage
    Включает в обновления пакеты, связанные с newpackage. Применимо для команд install, repoquery, updateinfo и upgrade.

--noautoremove
    Отключает удаление зависимостей, которые больше не используются. Это устанавливает параметр конфигурации clean_requirements_on_remove в False.

--nobest
    Устанавливает наилучший вариант в False, так что транзакции не ограничиваются только лучшими кандидатами.

--nodocs
    Не устанавливать документацию. Устанавливает флаг rpm 'RPMTRANS_FLAG_NODOCS'.

--nogpgcheck
    Пропускает проверку подписей GPG в пакетах (если позволяет политика RPM).

--noplugins
    Отключает все плагины.

--obsoletes
    Этот параметр влияет на установку / обновление, включает логику обработки устаревших пакетов dnf. Для получения дополнительной информации см. параметры obsoletes.

    Этот параметр также показывает, что пакет устаревает при использовании вместе с командой repoquery.

    Вариант конфигурации: obsoletes

-q, --quiet
    В сочетании с неинтерактивной командой показывает только соответствующий контент. Подавляет сообщения, уведомляющие о текущем состоянии или действиях DNF.

-R <minutes>, --randomwait=<minutes>
    Максимальное время ожидания команды.

--refresh
    Устанавливает метаданные как истекшие перед выполнением команды.

--releasever=<release>
    Настраивает DNF так, как если бы дистрибутив был <release>. Это может повлиять на пути кеша, значения в файлах конфигурации и URL-адреса списка зеркал.

--repofrompath <repo>,<path/url>
    Указывает репозиторий, который будет добавлен в репозитории для этого запроса. Этот параметр может быть использован несколько раз.

•   Метка репозитория указывается как <repo>.

•   Путь или URL-адрес к репозиторию указывается с помощью <path/url>. Это тот же путь, что и базовый URL, и он также может быть дополнен переменными repo.

•   Конфигурация для репозитория может быть скорректирована с помощью --setopt=<repo>.<option>=<value>.

•   Если вы хотите просматривать пакеты только из этого репозитория, совмещайте это с переключателями --repo=<repo> или --disablerepo="*".

--repo=<repoid>, --repoid=<repoid>
    Включает только определенные репозитории по идентификатору или маске. Можно использовать несколько раз с накопительным эффектом. Это в основном ярлык для --disablerepo="*" --enablerepo=<repoid> и является взаимоисключающим с параметром --disablerepo.

--rpmverbosity=<name>
    Уровень вывода сценария отладки RPM. Устанавливает уровень отладки <name> для RPM-скриплетов. Для информации о доступных уровнях, см. параметры конфигурации rpmverbosity.

--sec-severity=<severity>, --secseverity=<severity>
    Включает пакеты, которые предоставляют исправление для проблемы указанной серьезности. Применимо для команд install, repoquery, updateinfo и upgrade.

--security
    Включает пакеты, которые обеспечивают исправление проблемы безопасности. Применимо для команд upgrade.

--setopt=<option>=<value>
    Переопределяет параметр конфигурации из файла конфигурации. Чтобы переопределить параметры конфигурации для репозиториев, используйте repoid.option для <option>. Значения для параметров конфигурации, таких как excludepkgs, includepkgs, installonlypkgs и tsflags добавляются к исходному значению, они не отменяют его. Однако, указание пустого значения (например, --setopt=tsflags=) очистит параметр.

--skip-broken
    Разрешает проблемы зависимостей, удаляя пакеты, которые вызывают проблемы в транзакции. Это псевдоним для параметра строгой конфигурации со значением False. Кроме того, с подкомандами модуля enable и disable это позволяет выполнить действие даже в случае нарушенния модульных зависимостей.

--showduplicates
    Показывает дубликаты пакетов в репозиториях. Применимо для команд list и search.

-v, --verbose
    Подробная информация об операции, показ отладочных сообщений.

--version
    Показать версию DNF и выйти.

-y, --assumeyes
    Автоматически отвечать да на все вопросы.

    Параметры списка разделяются запятыми. Параметры командной строки переопределяют соответствующие параметры из файлов конфигурации.

КОМАНДЫ

Для объяснения <package-spec> и <package-file-spec> см. Указание критериев пакетов.

Для объяснения <package-nevr-spec> см. Указание точных версий пакетов.

Для объяснения <provide-spec> см. Указание provides.

Для объяснения <group-spec> см. Указание групп.

Для объяснения <module-spec> см. Указание модулей.

Для объяснения <transaction-spec> см. Указание транзакций.

  Псевдонимы команд

Позволяет пользователю определять и управлять списком псевдонимов (в форме <name=value>), который затем можно использовать в качестве команд dnf для сокращения длинных последовательностей команд. Для примеров использования псевдонима команд, см. Примеры псевдонимов. Для примеров обработки псевдонимов, см. Примеры обработки псевдонимов.

Чтобы использовать псевдоним (name=value), имя должно быть помещено в качестве первой "команды" (например, первый аргумент это не параметр). Затем он заменяется его значением, и в результирующей последовательности снова выполняется поиск псевдонимов. Обработка псевдонимов останавливается, когда первая найденная команда не является именем какого-либо псевдонима.

Кроме того, как и в псевдонимах командного интерпретатора, если результат начинается с \, обработка псевдонимов будет остановлена.

Все псевдонимы определены в файлах конфигурации в каталоге /etc/dnf/aliases.d/ в разделе [aliases], а псевдонимы, созданные командой alias, записываются в файл USER.conf. Дополнительно, есть параметр enabled в разделе [main] по умолчанию True. Это может быть установлено для каждого файл отдельно в соответствующем файле, или глобально для всех псевдонимов в файле ALIASES.conf.

dnf alias [options] [list] [<name>...] Список псевдонимов с их окончательным результатом. Параметр [<alias>...] дополнительно ограничивает результат только теми псевдонимами, которые соответствуют ему.

dnf alias [options] add <name=value>... Создаёт новые псевдонимы.

dnf alias [options] delete <name>... Удаляет псевдонимы.

  Примеры псевдонимов

dnf alias list
    Перечисляет все определенные псевдонимы.

dnf alias add rm=remove
    Добавляет новую команду псевдонима с именем "rm" которая выполняет ту же функцию, что и команда "remove".

dnf alias add update="\update --skip-broken --disableexcludes=all --obsoletes"
    Добавляет новую команду псевдонима с именем "update" которая выполняет ту же функцию, что и команда "update", но с параметрми --skip-broken --disableexcludes=all --obsoletes.

  Примеры обработки псевдонимов

Если есть определенные псевдонимы in=install и FORCE="--skip-broken --disableexcludes=all":

•   dnf FORCE in будет заменен на dnf --skip-broken --disableexcludes=all install

•   dnf in FORCE будет заменен на dnf install FORCE (который завершится неудачей)

    Если есть определенный псевдоним in=install:

•   dnf in будет заменен на dnf install

•   dnf --repo updates in будет заменен на dnf --repo updates in (который завершится неудачей)

  Команда автоматического удаления autoremove

dnf [options] autoremove Удаляет все «листовые» пакеты из системы, которые были изначально установлены как зависимости установленных пользователем пакетов, но которые больше не требуются для любого такого пакета.

Пакеты, перечисленные в installonlypkgs, никогда не удаляются автоматически этой командой.

dnf [options] autoremove <spec>... Это псевдоним для команды Команды удаления с установкой clean_requirements_on_remove в True. Он удаляет указанные пакеты из системы вместе с любыми пакетами, зависимыми от удаляемых пакетов. Каждый <spec> может быть либо <package-spec>, который указывает пакет прямо, или @<group-spec>, который определяет (среду) группу, содержащую его. Он также удаляет все зависимости, которые больше не нужны.

Есть также несколько специальных команд автоматического удаления autoremove-n, autoremove-na и autoremove-nevra которые позволяют указывать точный аргумент в формате NEVRA (name-epoch:version-release.architecture).

Эта команда по умолчанию не вызывает синхронизацию метаданных с истекшим сроком действия. Смотрите также Синхронизация метаданных.

  Команда проверки check

dnf [options] check [--dependencies] [--duplicates] [--obsoleted] [--provides] Проверяет локальный packagedb и выдает информацию о любых найденных проблемах. Вы можете ограничить количество проверок, используя параметры --dependencies, --duplicates, --obsoleted и --provides (по умолчанию проверять все).

  Команда проверки обновлений check-update

dnf [options] check-update [--changelogs] [<package-file-spec>...] Неинтерактивно проверяет, доступны ли обновления указанных пакетов. Если нет <package-file-spec>, проверяется, доступны ли какие-либо обновления для вашей системы. Код выхода DNF будет равен 100, когда появятся доступные обновления и будет напечатан список обновлений, 0, если нет, и 1, если возникла ошибка. Если указан параметр --changelogs, также выводится список изменений пакетов обновлений.

Обратите внимание, что наличие определенной более новой версии, доступной для установленного пакета (о чем сообщает check-update) не означает, что последующее dnf upgrade его установит. Разница в том, что dnf upgrade имеет ограничения (например, удовлетворяются зависимости пакета).

На вывод влияет параметр конфигурации autocheck_running_kernel.

  Команда очистки clean

Выполняет очистку временных файлов, хранящихся в репозиториях. Это включает в себя любые данные, оставшиеся после отключенния или удаления репозиториев, а также разных версий выпуска дистрибутива.

dnf clean dbcache
    Удаляет файлы кэша, созданные из метаданных репозитория. Это заставляет DNF восстановить файлы кэша при следующем запуске.

dnf clean expire-cache
    Отмечает истечение срока действия метаданных репозитория. DNF будет повторно проверять кэш для каждого репозитория при следующем использовании.

dnf clean metadata
    Удаляет метаданные репозитория. Это те файлы, которые DNF использует для определения доступных пакетов. Использование этого параметра позволит DNF загрузить все метаданные при следующем запуске программы.

dnf clean packages
    Удаляет все кэшированные пакеты из системы.

dnf clean all
    Делает все вышеперечисленное.

  Команда списка зависимостей deplist

dnf [options] deplist [<select-options>] [<query-options>] [<package-spec>]
    Псевдоним для dnf repoquery --deplist.

  Команда синхронизации дистрибутива distro-sync

dnf distro-sync [<package-spec>...]
    По мере необходимости обновляет, понижает версию или сохраняет выбранные установленные пакеты в соответствии с последней версией, доступной в любом включенном репозитории. Если пакет не указан, учитываются все установленные пакеты.

    Смотрите также Политика замены файлов конфигурации.

  Команда синхронизации дистрибутив distribution-synchronization

dnf distribution-synchronization
    Устаревший псевдоним для Команда синхронизации дистрибутива.

  Команда понижения downgrade

dnf [options] downgrade <package-spec>...
    Понижает указанные пакеты до самого высокого устанавливаемого пакета из всех известных более низких версий, если это возможно. Если указана версия, которая ниже версии установленного пакета, то он понижается до указанной версии.

  Команда cтерания erase

dnf [options] erase <spec>...
    Устаревший псевдоним для Команды удаления.

  Команда группы group

Группы - это виртуальные коллекции пакетов. DNF отслеживает группы, выбранные пользователем («помеченные»), установленные и может манипулировать составными пакетами с помощью простых команд.

dnf [options] group [summary] <group-spec>
    Показывает обзор того, сколько групп установлено и доступно. С помощью спецификации ограничивает вывод соответствующими группами. По умолчанию summary подкоманда groups.

dnf [options] group info <group-spec>
    Показывает список пакетов группы. При использовании -v показывает, какие пакеты установлены или доступны в репозитории.

dnf [options] group install [--with-optional] <group-spec>...
    Отмечает указанную группу установленной и устанавливает пакеты, которые она содержит. Также включает пакеты группы optional, если указано --with-optional. Все пакеты mandatory и Default, будут установлены при любой возможности. Условные пакеты устанавливаются, если они отвечают требованиям. Если группа уже (частично) установлена, команда устанавливает отсутствующие пакеты из группы. В зависимости от значения параметра конфигурации устаревших, групповая установка принимает во внимание устаревшие.

dnf [options] group list <group-spec>...
    Перечисляет все соответствующие группы, среди установленных или доступных групп. Если ничего не указано, список всех известных групп. Параметры --installed и --available сузят запрошенный список. Записи упорядочены по тегу display_order определенному в файле comps.xml. Для предоставления списка всех скрытых групп, используйте параметр --hidden. Для предоставления идентификатора группы, используйте параметр -v или --ids.

dnf [options] group remove <group-spec>...
    Отмечает группу как удаленную и удаляет из системы те пакеты в группе, которые не принадлежат другой установленной группе и не были явно установлены пользователем.

dnf [options] group upgrade <group-spec>...
    Обновляет пакеты из группы и обновляет саму группу. Последнее включает в себя установку пакетов, которые были добавлены в группу дистрибутивом, и удаление пакетов, которые были удалены из группы, поскольку они не были установлены пользователем явно.

    Группы также могут быть помечены установленными или удаленными без физического манипулирования любыми пакетами:

dnf [options] group mark install <group-spec>...
    Отмечает указанную группу, как установленную. Никакие пакеты не будут установлены этой командой, но группа будет считаться установленной.

dnf [options] group mark remove <group-spec>...
    Отмечает указанную группу, как удаленную. Никакие пакеты не будут удалены этой командой.

    Смотрите также Политика замены файлов конфигурации.

  Команда групп groups

dnf [options] groups
    Устаревший псевдоним для Команда группы group.

  Команда справки help

dnf help [<command>]
    Показыват текст справки для всех команд. Если дано имя команды, то отображает справку только для этой конкретной команды.

  Команда истории history

Команда history позволяет пользователю просматривать события прошлых транзакций и действовать в соответствии с этой информацией (при условии, что установлен параметр конфигурации history_record).

dnf history [list] [<spec>...]
    Действие history по умолчанию - вывод информации о данных транзакциях в таблице. Каждый <spec> может быть либо <transaction-spec>, который указывает транзакцию напрямую, или <transaction-spec>..<transaction-spec>, который определяет диапазон транзакций, или <package-name-spec>, который определяет транзакцию пакетом, которым он манипулировал. Если транзакция не указана, список всех известных транзакций.

dnf history info [<spec>...]
    Описывает данные транзакции. Значение <spec> такое же, как в Команде списка истории. Если транзакция не указана, опишет, что произошло во время последней операции.

dnf history redo <transaction-spec>|<package-file-spec>
    Повторяет указанную транзакцию. Использует последнюю транзакцию (с наибольшим идентификатором) если найдено несколько транзакций для данного <package-file-spec>. Если некоторые операции невозможно повторить из-за текущего состояния RPMDB, то транзакция не будет повторена.

dnf history rollback <transaction-spec>|<package-file-spec>
    Отменяет все транзакции, выполненные после указанной транзакции. Использует последнюю транзакцию (с наибольшим идентификатором), если найдено несколько транзакций для данного <package-file-spec>. Если невозможно отменить некоторые транзакции из-за текущего состояния RPMDB, это не отменит ни одну транзакцию.

dnf history undo <transaction-spec>|<package-file-spec>
    Выполняет противоположную операцию для всех операций, выполняемых в указанной транзакции. Использует последнюю транзакцию (с наибольшим идентификатором), если найдено более одной транзакции для данного <package-file-spec>. Если невозможно отменить некоторые операции из-за текущее состояние RPMDB, не отменяет транзакцию.

dnf history userinstalled
    Показывает все пакеты только для установки, пакеты, установленные вне DNF, и пакеты, установленные не как зависимости. То есть в нем перечислены пакеты, которые останутся в системе после выполнения Команды автоматического удаления и Команда удаления вместе с параметр конфигурации clean_requirements_on_remove, установленный в True. Обратите внимание, что тот же результат может быть достигнут с dnf repoquery --userinstalled, и repoquery более мощная команда в форматировании вывода.

    Эта команда по умолчанию не вызывает синхронизацию устаревших метаданных, за исключением подкоманды redo, rollback и undo. Смотрите также Синхронизация метаданных и Политика замены файлов конфигурации.

  Команда информации info

dnf [options] info [<package-file-spec>...]
    Описывает списки и сводную информацию об установленных и доступных пакетах.

    Эта команда по умолчанию не вызывает синхронизацию метаданных с истекшим сроком действия. Смотрите также Синхронизация метаданных.

  Команда установки install

dnf [options] install <spec>...
    Удостоверяется, что данные пакеты и их зависимости установлены в системе. Каждый <spec> может быть <package-spec>, или @<module-spec>, или @<group-spec>. См. Примеры установки. Если данный пакет не может быть установлен (и еще не установлен), код выхода будет отличным от нуля. Если <spec> совпадает с обоими @<module-spec> и @<group-spec>, устанавливается только модуль.

    Когда <package-spec> указывает точную версию пакета, DNF установит нужную версию, независимо от того, какая версия пакета уже установлена. Прежняя версия пакета будет удалена в случае если пакет не предназначен только для установки.

    Есть также несколько конкретных команд установки install-n, install-na и install-nevra которые позволяют указывать точный аргумент в формате NEVRA.

    Смотрите также Политика замены файлов конфигурации.

  Примеры установки

dnf install tito
    Устанавливает пакет tito (tito - это имя пакета).

dnf install ~/Downloads/tito-0.6.2-1.fc22.noarch.rpm
    Устанавливает локальный rpm файл tito-0.6.2-1.fc22.noarch.rpm из каталога ~/Downloads/.

dnf install tito-0.5.6-1.fc22
    Устанавливает пакет с определенной версией. Если пакет уже установлен, автоматически попытается понизить или обновить до определенной версии.

dnf --best install tito
    Устанавливает последнюю доступную версию пакета. Если пакет уже установлен, будет пытаться автоматически обновить до последней версии. Если последняя версия пакета не может быть установлена, установка не удастся.

dnf install vim
    DNF автоматически распознает, что vim не является именем пакета, но найдёт и установит пакет, который предоставляет vim все необходимые зависимости. Примечание: Совпадение имени пакета имеет приоритет над совпадением представления пакета.

dnf install https://kojipkgs.fedoraproject.org//packages/tito/0.6.0/1.fc22/noarch/tito-0.6.0-1.fc22.noarch.rpm
    Устанавливает пакет прямо с URL.

dnf install '@docker'
    Устанавливает все стандартные профили модуля 'docker' и их RPM. Потоки модуля включаются соответствующим образом.

dnf install '@Web Server'
    Устанавливает группу среды 'Web Server'.

dnf install /usr/bin/rpmsign
    Устанавливает пакет, содержащий файл /usr/bin/rpmsign.

dnf -y install tito --setopt=install_weak_deps=False
    Устанавливает пакет tito (tito - это имя пакета) без слабых зависимостей. Слабые зависимости не требуются для основных функциональных возможностей пакета, но они улучшают оригинальный пакет (например, расширенная документация, плагины, дополнительные функции и т.д.).

dnf install --advisory=FEDORA-2018-b7b99fe852 \*
    Устанавливает все пакеты, которые рекомендуются "FEDORA-2018-b7b99fe852".

  Команда списка list

Печатает списки пакетов в зависимости от отношения пакетов к системе. Пакет является установленным installed если он присутствует в RPMDB, и он является доступным available если он не установлен, но присутствует в репозитории, о котором знает DNF. Команда list также может ограничивать отображаемые пакеты в соответствии с определенными критериями, например только те, которые обновляют установленный пакет. Параметр исключения в файле конфигурации может влиять на результат, но если командная строка использует параметр --disableexcludes, это гарантирует, что все установленные пакеты будут перечислены.

dnf [options] list [--all] [<package-file-spec>...]
    Перечисляет все пакеты, представленные в RPMDB, в репозитории или в обоих.

dnf [options] list --installed [<package-file-spec>...]
    Перечисляет установленные пакеты.

dnf [options] list --available [<package-file-spec>...]
    Перечисляет доступные пакеты.

dnf [options] list --extras [<package-file-spec>...]
    Список дополнительных компонентов, то есть пакетов, установленных в системе, которые не доступны в любом известном репозитории.

dnf [options] list --obsoletes [<package-file-spec>...]
    Список пакетов, установленных в системе, которые устарели в любом известном репозиторий.

dnf [options] list --recent [<package-file-spec>...]
    Список пакетов, недавно добавленных в репозитории.

dnf [options] list --upgrades [<package-file-spec>...]
    Список обновлений, доступных для установленных пакетов.

dnf [options] list --autoremove
    Список пакетов, которые будут удалены командой dnf autoremove.

    Эта команда по умолчанию не вызывает синхронизацию метаданных с истекшим сроком действия. Смотрите также Синхронизация метаданных.

  Команда локальной установки localinstall

dnf [options] localinstall <spec>...
    Устаревший псевдоним для Команды установки.

  Команда создания кэша makecache

dnf [options] makecache
    Загружает и кэширует метаданные для всех известных репозиториев. Пытается по возможности избегать загрузки (например, когда у локальных метаданных ещё не истекли или когда метка времени метаданных не изменилась).

dnf [options] makecache --timer
    Как и обычный makecache, но дает DNF больше информации о ресурсах, это означает, что он ничего не будет делать, если работает от аккумулятора, и немедленно прекратит работу, если прошло слишком мало времени после последнего успешного запуска makecache (см. dnf.conf(5), metadata_timer_sync).

  Команда маркировки mark

dnf mark install <package-spec>...
    Помечает указанные пакеты как установленные пользователем. Это может быть полезно, если какой-либо пакет был установлен как зависимость и желательно оставлять его в системе, когда выполняется Команда автоматического удаления autoremove или Команда удаления remove вместе с параметром конфигурации clean_requirements_on_remove, установленном в True.

dnf mark remove <package-spec>...
    Отменяет пометку указанных пакетов как установленных пользователем. Если вам, как пользователю, не нужен конкретный пакет, вы можете пометить его для удаления. Пакет остается установленным в системе, но будет удален, когда будет выполнятся Команда автоматического удаления autoremove или Команда удаления remove вместе с параметром конфигурации clean_requirements_on_remove, установленном в True. Вы должны использовать эту операцию вместо Команды удаления remove, если вы не уверены, является ли этот пакет необходим для других, установленных пользователем, пакетов в системе.

dnf mark group <package-spec>...
    Помечает указанные пакеты как установленные группой. Это может быть полезно, если какой-либо пакет был установлен как зависимость, и желательно, чтобы он был защищен и обрабатывался как член группы, как во время удаления группы.

  Команда модуля module

Обзор модульности доступен на странице руководства dnf.modularity(7). Подкоманды модуля принимают аргументы <module-spec>..., которые определяют модули или профили.

dnf [options] module install <module-spec>...
    Устанавливает профили модулей, включая их пакеты. Если профиль не был предоставлен, устанавливаются все профили по умолчанию. Потоки модуля включаются соответственно.

    Эта команда не может использоваться для переключения потоков модулей. Рекомендуется удалить все установленное содержимое из модуля и перезагрузить модуль с помощью команды reset. После сброса модуля вы можете установить другой поток.

dnf [options] module update <module-spec>...
    Обновление пакетов, связанных с активным модульным потоком, при желании ограничевается профилем. Если указано profile_name, будут обновлены только пакеты, на которые ссылается этот профиль.

dnf [options] module remove <module-spec>...
    Удаляет установленные профили модулей, включая пакеты, которые были установлены с помощью команды dnf module install. Не удаляет пакеты, требующиеся другим установленным профилям модулей или другим установленным пользователем пакетам. Если профиль не был предоставлен, все установленные профили удаляются.

dnf [options] module remove --all <module-spec>...
    Удаляет установленные профили модулей, включая пакеты, которые были установлены командой dnf module install. С параметром --all он дополнительно удаляет все пакеты, имена которых предоставлены указанными модулями. Пакеты, необходимые для других установленных профилей модулей и пакетов, имена которых также предоставленные любым другим модулем, не удаляются.

dnf [options] module enable <module-spec>...
    Включает поток модуля и сделает RPM потока доступными в выводе пакетов.

    Модульные зависимости разрешены, зависимости проверены, а также рекурсивно включены. В случае проблемы модульной зависимости операция будет отклонена. Чтобы выполнить действие в любом случае, используйте параметр --skip-broken.

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

dnf [options] module disable <module-name>...
    Отключает модуль. Все связанные потоки модуля станут недоступными. Следовательно, все установленные профили будут удалены, а RPM модулей станут недоступны в выводе пакетов. В случае проблемы модульной зависимости операция будет отклонена. Чтобы выполнить действие в любом случае, используйте параметр --skip-broken.

dnf [options] module reset <module-name>...
    Сбрасывает состояние модуля, чтобы он больше не включался и не отключался. Следовательно, все установленные профили будут удалены и в выводе пакетов будут доступны только RPM из потока по умолчанию.

dnf [options] module provides <package-name-spec>...
    Выводит список всех модульных пакетов, соответствующих <package-name-spec> из всех модулей (включая отключенные), наряду с модулями и потоками, к которым они принадлежат.

dnf [options] module list [--all] [module_name...]
    Перечисляет все потоки модулей, их профили и состояния (включено, отключено, по умолчанию).

dnf [options] module list --enabled [module_name...]
    Перечисляет потоки модуля, которые включены.

dnf [options] module list --disabled [module_name...]
    Перечисляет потоки модуля, которые отключены.

dnf [options] module list --installed [module_name...]
    Список потоков модуля с установленными профилями.

dnf [options] module info <module-spec>...
    Распечатывает подробную информацию о данном модуле потока.

dnf [options] module info --profile <module-spec>...
    Распечатывает подробную информацию о профилях данного модуля.

dnf [options] module repoquery <module-spec>...
    Список всех доступных пакетов, принадлежащих выбранным модулям.

dnf [options] module repoquery --available <module-spec>...
    Список всех доступных пакетов, принадлежащих выбранным модулям.

dnf [options] module repoquery --installed <module-spec>...
    Список всех установленных пакетов с таким же именем, как у пакетов, принадлежащих выбранным модулям.

  Команда представления provides

dnf [options] provides <provide-spec>
    Поиск пакетов, предоставляющих данные <provide-spec>. Это полезно, когда кто-то знает имя файла и хочет найти, какой пакет (установлен или нет) предоставляет этот файл. Команда <provide-spec> постепенно ищет в следующих местах:

1.  Команда <provide-spec> сопоставляет со всеми файлами любого доступного пакета:

    $ dnf provides /usr/bin/gzip
    gzip-1.9-9.fc29.x86_64 : Программа сжатия данных GNU
    Совпадает с:
    Имя файла    : /usr/bin/gzip

2.  Затем выполняется поиск всех доступных пакетов:

    $ dnf provides "gzip(x86-64)"
    gzip-1.9-9.fc29.x86_64 : Программа сжатия данных GNU
    Совпадает с:
    Предоставляет     : gzip(x86-64) = 1.9-9.fc29

3.  DNF предполагает, что <provide-spec> это системная команда, добавляет её с префиксом /usr/bin/, /usr/sbin/ (по одному) и делает снова поиск представления файл. По наследству также ищутся префиксы /bin и /sbin:

    $ dnf provides zless
    gzip-1.9-9.fc29.x86_64 : Программа сжатия данных GNU
    Совпадает с:
    Имя файла    : /usr/bin/zless

4.  Если этот последний шаг также потерпел неудачу, DNF возвращает "Ошибка: совпадений не найдено".

    Эта команда по умолчанию не вызывает синхронизацию метаданных с истекшим сроком действия. Смотрите также Синхронизация метаданных.

  Команда переустановки reinstall

dnf [options] reinstall <package-spec>...
    Устанавливает указанные пакеты, сбой происходит, если некоторые из пакетов либо не установлены, либо недоступны (т.е. нет репозитория, откуда скачать тот RPM).

  Команда удаления remove

dnf [options] remove <package-spec>...
    Удаляет указанные пакеты из системы вместе с любыми пакетами, зависяшими от удаляемых пакетов. Каждый <spec> может быть либо <package-spec>, который указывает пакет напрямую, или @<group-spec>, который указывает (среду) группу, которая его содержит. Если clean_requirements_on_remove включен (по умолчанию), также удаляет все зависимости, которые больше не нужны.

dnf [options] remove --duplicates
    Удаляет старые версии дубликатов пакетов. Для обеспечения целостности системы это переустанавливает самый новый пакет. В некоторых случаях команда не может разрешить конфликты. В таких случаях может помочь команда dnf shell с подкомандами dnf remove --duplicates и upgrade.

dnf [options] remove --oldinstallonly
    Удаляет старые установочные пакеты, сохраняя только последние версии installonly_limit.

    Есть также несколько конкретных команд удаления remove-n, remove-na и remove-nevra, которые позволяют указывать точный аргумент в формате NEVRA.

  Примеры удаления

dnf remove acpi tito
    Удаляет пакеты acpi и tito.

dnf remove $(dnf repoquery --extras --exclude=tito,acpi)
    Удаляет пакеты, которых нет в любом репозитории, но не удаляет пакеты tito и acpi (они все еще могут быть удалены, если они зависят от некоторых из удалённых пакетов).

    Удаляет старые версии дубликатов пакетов (эквивалент yum package-cleanup --cleandups):

    dnf remove --duplicates

  Команда repoinfo
Псевдоним для команды repolist который предоставляет более подробную информацию, такую как dnf repolist -v.

  Команда repolist

dnf [options] repolist [--enabled|--disabled|--all]
    В зависимости от точной команды перечисляет включенные, отключенные или все известные репозитории. По умолчанию перечисляет все включенные репозитории. Предоставляет более подробную информацию при использовании параметра -v.

    Эта команда по умолчанию не вызывает синхронизацию метаданных с истекшим сроком действия. Смотрите также Синхронизация метаданных.

  Команда repoquery

dnf [options] repoquery [<select-options>] [<query-options>] [<package-file-spec>]
    Выполняет поиск выбранных пакетов в доступных репозиториях и отображает запрошенную информацию о них. Это является эквивалентом rpm -q для удаленных репозиториев.

dnf [options] repoquery --querytags
    Предоставляет список тегов, распознаваемых параметром --queryformat repoquery.

    Есть также несколько специфических команд repoquery repoquery-n, repoquery-na и repoquery-nevra которые позволяют указывать точный аргумент в формате NEVRA (не влияет на аргументы таких параметров, как --whatprovides <arg>, ...).

  Выбор параметров

Вместе с <package-file-spec>, контролирует, какие пакеты отображаются в выводе. Если задано <package-file-spec>, ограничивает результирующий вывод пакетов до тех, которые соответствуют спецификации. Рассматриваются все пакеты, если не указано <package-file-spec>.

<package-file-spec>
    Спецификация пакета в формате NEVRA (name[-[epoch:]version[-release]][.arch]), предоставляет пакет или предоставляет файл. См. Указание критериев пакетов.

-a, --all
    Запрашивает все пакеты (для совместимости с rpmquery, также сокращение для repoquery или repoquery без аргументов).

--arch <arch>[,<arch>...], --archlist <arch>[,<arch>...]
    Ограничивает результирующий вывод только пакетами выбранных архитектур (по умолчанию все архитектуры). В некоторых случаях на результат влияет базовая архитектура работающей системы, следовательно, чтобы запустить repoquery для архитектуры, несовместимой с вашей системой, используйте параметр смены базовой архитектуры --forcearch=<arch>.

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

--unneeded
    Ограничивает результирующий вывод только теми пакетами, которые были установлены как зависимости, поэтому они больше не нужны. переключатель перечисляет пакеты, которые будут удалены после выполнения команды dnf autoremove.

--available
    Ограничивает результирующий вывод только доступными пакетами (установлен по умолчанию).

--disable-modular-filtering
    Отключает фильтрацию модульных пакетов, так что пакеты неактивных потоков модулей включаются в результат.

--extras
    Ограничивает полученный вывод пакетами, которых нет ни в одном из доступных репозиториев.

-f <file>, --file <file>
    Ограничивает полученный вывод только пакетом, которому принадлежит <file>.

--installed
    Ограничивает полученный вывод только установленными пакетами. Параметр исключения в файле конфигурации может повлиять на результат, но если используется параметр командной строки --disableexcludes, это гарантирует, что все установленные пакеты будут перечислены.

--installonly
    Ограничьте полученный вывод установленными пакетами, предназначенными только для установки.

--latest-limit <number>
    Ограничивает результирующий вывод до количества <number> последних пакетов для каждого имени пакета и архитектуры. Если число <number> отрицательное, пропускается количество <number> последних пакетов. Для отрицательного числа <number> используйте синтаксис --latest-limit=<number>.

--recent
    Ограничивает полученный вывод пакетами, которые были недавно измнены.

--repo <repoid>
    Ограничивает результирующий вывод только пакетами из репозитория, обозначенного <repoid>. Может использоваться несколько раз с накопительным эффектом.

--unsatisfied
    Сообщает о неудовлетворенных зависимостях между установленными пакетами (т.е. отсутствующие требуемые зависимости и существующие конфликты).

--upgrades
    Ограничивет полученный вывод пакетами, которые предоставляют обновление для некоторых уже установленных пакетов.

--userinstalled
    Ограничивает полученный вывод пакетами, установленными пользователем. Параметр исключения в файле конфигурации может повлиять на результат, но если используется параметр командной строки --disableexcludes, это гарантирует, что все установленные пакеты будут перечислены.

--whatdepends <capability>
    Ограничивает полученный вывод только пакетами, которые требуются, улучшают, рекомендуются, предлагаются или дополняют <capability>.

--whatconflicts <capability>
    Ограничивает результирующий вывод только пакетами, которые конфликтуют <capability>.

--whatenhances <capability>
    Ограничивает полученный вывод только теми пакетами, которые улучшают <capability>. Используйте --whatdepends , если вы хотите перечислить все пакеты зависимостей.

--whatobsoletes <capability>
    Ограничивает полученный вывод только теми пакетами, которые устарели <capability>.

--whatprovides <capability>
    Ограничьте полученный вывод только пакетами, которые предоставляют <capability>.

--whatrecommends <capability>
    Ограничьте полученный вывод только теми пакетами, которые рекомендуются <capability>. Используйте --whatdepends , если вы хотите перечислить все пакеты зависимостей.

--whatrequires <capability>
    Ограничьте полученный вывод только пакетами, которые требуются <capability>. Используйте --whatdepends , если вы хотите перечислить все пакеты зависимостей.

--whatsuggests <capability>
    Ограничьте полученный вывод только пакетами, которые предлагаются <capability>. Используйте --whatdepends , если вы хотите перечислить все пакеты зависимостей.

--whatsupplements <capability>
    Ограничьте полученный вывод только теми пакетами, которые дополняют <capability>. Используйте --whatdepends , если вы хотите перечислить все пакеты зависимостей.

--alldeps
    Эта параметр может быть наращен только с --whatrequires или --whatdepends. Кроме того, он добавляет все пакеты, для которых требуются функции пакета, в вывод результатов (используется по умолчанию).

--exactdeps
    Эта параметр может быть наращен только с --whatrequires или --whatdepends. Ограничивает полученный вывод только пакетами, которые требует <capability> заданное --whatrequires.

--srpm
    Работать на соответствующем источнике RPM.

  Параметры запроса

Установка, какая информация отображается для каждого пакета.

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

-i, --info
    Показывает подробную информацию о пакете.

-l, --list
    Показывает список файлов в пакете.

-s, --source
    Показывает имя источника пакета RPM.

--changelogs
    Распечатывает изменения пакета.

--conflicts
    Показывает конфликтующие пакеты. То же самое, что и --qf "%{conflicts}.

--depends
    Показывает пакеты, от которых пакет зависит, которые его улучшают, рекомендуются, предлагаются или дополняют.

--enhances
    Показывает пакеты, расширяющие пакет. То же самое, что и --qf "%{enhances}"".

--location
    Показывает местоположение, откуда пакет может быть загружен.

--obsoletes
    Показывает, что пакет устарел. То же самое, что и --qf "%{obsoletes}".

--provides
    Показывает пакеты, предоставленные пакетом. То же самое, что и --qf "%{provides}".

--recommends
    Показывает пакеты, рекомендованные пакетом. То же самое, что и --qf "%{recommends}".

--requires
    Показывает, что пакет зависит от. То же самое, что и --qf "%{requires}".

--requires-pre
    Показывает, что пакет зависит от запуска сценария %pre. То же самое, что и --qf "%{requires-pre}".

--suggests
    Показывает пакеты, предлагаемые пакету. То же самое, что и --qf "%{suggests}".

--supplements
    Показывает пакеты, дополняющие пакет. То же самое, что и --qf "%{supplements}".

--tree
    Показывает рекурсивное дерево пакетов, с указанными одним из следующих дополнительных параметров: --whatrequires, --requires, --conflicts, --enhances, --suggests, --provides, --supplements, --recommends.

--deplist
    Создают список всех прямых зависимостей и какие пакеты предоставляют эти зависимости для данных пакетов. Результат показывает только самые новые (который могут быть изменены с помощью --verbose).

--nvr
    Показыват найденные пакеты в формате name-version-release. То же самое, что и --qf "%{name}-%{version}-%{release}".

--nevra
    Показыват найденные пакеты в формате name-epoch:version-release.architecture. То же самое, что и --qf "%{name}-%{epoch}:%{version}-%{release}.%{arch}" (default).

--envra
    Показыват найденные пакеты в формате epoch:name-version-release.architecture. То же самое, что и --qf "%{epoch}:%{name}-%{version}-%{release}.%{arch}"

--qf <format>, --queryformat <format>
    Пользовательский формат отображения. <format> - строка для вывода для каждого соответствующего пакета. Каждое вхождение в пределах %{<tag>} заменяется соответствующим атрибутом пакета. Список распознанных тегов может быть отображен запуском dnf repoquery --querytags.

--recursive
    Запрос пакетов рекурсивно. Должен использоваться с --whatrequires <REQ> (опционально с --alldeps, но не с --exactdeps) или с --requires <REQ> --resolve.

--resolve
    разрешить возможности исходного пакета(ов).

  Примеры

Показывает NEVRA всех подходящих пакетов light*:

dnf repoquery 'light*'

Показывает NEVRA всех подходящих имён пакетов light* и архитектуры noarch (принимает только аргументы в формате "<name>.<arch>"):

dnf repoquery-na 'light*.noarch'

Показыват все requires пакета lighttpd:

dnf repoquery --requires lighttpd

Показыват предоставления пакета требуемые пакету python:

dnf repoquery --requires python --resolve

Показыват исходный пакет rpm ligttpd:

dnf repoquery --source lighttpd

Показывает имя пакета, которому принадлежит данный файл:

dnf repoquery --file /etc/lighttpd/lighttpd.conf

Показыват имя, архитектуру и репозиторий всех пакетов lighttpd:

dnf repoquery --queryformat '%{name}.%{arch} : %{reponame}' lighttpd

Показывает все доступные пакеты, предоставляющие "webserver":

dnf repoquery --whatprovides webserver

Показывает все доступные пакеты, предоставляющие "webserver" но только для архитектуры "i686":

dnf repoquery --whatprovides webserver --arch i686

Показывает дубликаты пакетов:

dnf repoquery --duplicates

Показыват исходные пакеты, для которых требуется <provide> для сборки:

dnf repoquery --disablerepo=* --enablerepo=*-source --arch=src --whatrequires <provide>

  Команда repo-pkgs

dnf [options] repo-pkgs
    Устаревший псевдоним для Команды repository-packages.

  Команда repository-packages

Команда repository-package позволяет пользователю запускать команды поверх всех пакетов в названном репозитории <repoid>. Однако любое разрешение зависимостей учитывает пакеты из всех включенных репозиториев. Спецификации <package-file-spec> и <package-spec> дополнительно ограничивают кандидатов только теми пакетами, которые соответствуют хотя бы одному из них.

Подкоманда info содержит описание и сводную информацию о пакетах в зависимости от отношения пакетов к репозиторию. Подкоманда list просто печатает списки этих пакетов.

dnf [options] repository-packages <repoid> check-update [<package-file-spec>...]
    Неинтерактивно проверяет, доступны ли обновления указанных пакетов в репозитории. Код выхода DNF будет равен 100, когда появятся доступные обновления и будет напечатан список обновлений.

dnf [options] repository-packages <repoid> info [--all] [<package-file-spec>...]
    Список всех связанных пакетов.

dnf [options] repository-packages <repoid> info --installed [<package-file-spec>...]
    Список пакетов, установленных из репозитория.

dnf [options] repository-packages <repoid> info --available [<package-file-spec>...]
    Список пакетов, доступных в репозитории, но не установленных в системе.

dnf [options] repository-packages <repoid> info --extras [<package-file-specs>...]
    Список пакетов, установленных из репозитория, которые недоступны ни в одном репозитории.

dnf [options] repository-packages <repoid> info --obsoletes [<package-file-spec>...]
    Список пакетов, доступных в репозитории, которые устарели и установлены в системе.

dnf [options] repository-packages <repoid> info --recent [<package-file-spec>...]
    Список пакетов, недавно добавленных в репозиторий.

dnf [options] repository-packages <repoid> info --upgrades [<package-file-spec>...]
    Список пакетов в репозитории, которые обновляют пакеты, установленные в системе.

dnf [options] repository-packages <repoid> install [<package-spec>...]
    Установит все пакеты в репозитории.

dnf [options] repository-packages <repoid> list [--all] [<package-file-spec>...]
    Список всех связанных пакетов.

dnf [options] repository-packages <repoid> list --installed [<package-file-spec>...]
    Список пакетов, установленных из репозитория.

dnf [options] repository-packages <repoid> list --available [<package-file-spec>...]
    Список пакетов, доступных в репозитории, но не установленных в системе.

dnf [options] repository-packages <repoid> list --extras [<package-file-spec>...]
    Список пакетов, установленных из репозитория, которые недоступны ни в одном репозитории.

dnf [options] repository-packages <repoid> list --obsoletes [<package-file-spec>...]
    Список пакетов, доступных в репозитории, которые устарели и установлены в системе.

dnf [options] repository-packages <repoid> list --recent [<package-file-spec>...]
    Список пакетов, недавно добавленных в репозиторий.

dnf [options] repository-packages <repoid> list --upgrades [<package-file-spec>...]
    Список пакетов в репозитории, которые обновляют пакеты, установленные в системе.

dnf [options] repository-packages <repoid> move-to [<package-spec>...]
    Переустановит все те пакеты, которые доступны в репозитории.

dnf [options] repository-packages <repoid> reinstall [<package-spec>...]
    Запустит подкоманду reinstall-old. Если это не удастся, запустит подкоманду move-to.

dnf [options] repository-packages <repoid> reinstall-old [<package-spec>...]
    Переустановит все те пакеты, которые были установлены из репозитория и одновременно доступны в репозитории.

dnf [options] repository-packages <repoid> remove [<package-spec>...]
    Удалит все пакеты, установленные из репозитория, а также все пакеты, зависимостые от удаляемых пакетов. Если включен параметр clean_requirements_on_remove (по умолчанию), то также удаляются все ненужные зависимости.

dnf [options] repository-packages <repoid> remove-or-distro-sync [<package-spec>...]
    Выберает все пакеты, установленные из репозитория. Обновит, понизит или сохранит те из них, которые доступны в другом репозитории, чтобы соответствовать последней версии, доступной там, и удалит остальные вместе с любыми пакетами, зависимыми от удаляемых пакетов. Если включен параметр clean_requirements_on_remove (по умолчанию), то также удаляются все ненужные зависимости.

dnf [options] repository-packages <repoid> remove-or-reinstall [<package-spec>...]
    Выберает все пакеты, установленные из репозитория. Переустановит те из них, которые доступны в другом репозитории, и удалит остальные, вместе с любыми пакетами, зависимыми от удаляемых пакетов. Если включен параметр clean_requirements_on_remove (по умолчанию), то также удаляются все ненужные зависимости.

dnf [options] repository-packages <repoid> upgrade [<package-spec>...]
    Обновит все пакеты до самой высокой разрешённой версии, доступной в репозитории.

dnf [options] repository-packages <repoid> upgrade-to <package-nevr-specs>...
    Обновит пакеты до указанных версий, доступных в репозитории. Upgrade - устаревший псевдоним для подкоманды обновления.

  Команда поиска search

dnf [options] search [--all] <keywords>...
    Поиск метаданных пакета по ключевым словам. Ключевые слова сопоставляются как нечувствительные к регистру подстроки, поддерживается подстановка. По умолчанию перечисляет пакеты, которые соответствуют всем запрашиваемым ключам (операция И). Ключи ищутся в именах и сводках пакетов. Если используется параметр "--all", перечисляются пакеты, которые соответствуют хотя бы одному из ключей (операция ИЛИ). Кроме того, ключи ищутся в описаниях пакетов и URL-адресах. Результат сортируется от наиболее релевантного результата к наименьшему.

    Эта команда по умолчанию не вызывает синхронизацию метаданных с истекшим сроком действия. Смотрите также Синхронизация метаданных.

  Команда shell

dnf [options] shell [filename]
    Откройте интерактивный командный интерпретатор для выполнения нескольких команд во время одного выполнения DNF. Эти команды могут быть введены вручную или переданы DNF из файла. Команды во многом совпадают с обычными параметрами командной строки DNF. Есть несколько дополнительных команд, документированных ниже.

config [conf-option] [value]

•   Установит параметр конфигурации на запрошенное значение. Если значение не указано, печатается текущее значение.

repo [list|enable|disable] [repo-id]

•   list: список репозиториев и их статус

•   enable: включить репозиторий

•   disable: отключить репозиторий

transaction [list|reset|solve|run]

•   list: разрешить и перечислить содержание транзакции

•   reset: сбросить транзакцию

•   run: разрешить и запустить транзакцию

  Коменда swap

dnf [options] swap <remove-spec> <install-spec> Удалить спецификацию и установить спецификацию за одну транзакцию. Каждый <spec> может быть <package-spec>, который указывает пакет напрямую, или @<group-spec>, который указывает (среду) группу, которая его содержит. Автоматическое разрешение конфликтов обеспечивается параметром DNF --allowerasing, который автоматически обеспечивает функциональность команды swap.

  Команда обновления update

dnf [options] update
    Устаревший псевдоним для Команды обновления upgrade.

  Команда updateinfo

dnf [options] updateinfo [--summary|--list|--info] [<availability>] [<spec>...]
    Показыват информацию об обновлениях.

    В зависимости от типа вывода, DNF отображает только количество рекомендательных типов (опущено или --summary), список рекомендаций (--list) или подробную информацию (--info). Когда параметр -v используется с --info, информация еще более подробная.

    <availability> указывает, есть ли рекомендации о более новых версиях установленные пакеты (опущены или --available), рекомендации о равных и старых версиях установленных пакетов (--installed), рекомендации о более новых версиях тех установленных пакетов, для которых доступна более новая версия (--updates) или принимаются во внимание рекомендации о любых версиях установленных пакетов (--all). Большую часть времени, --available и --updates отображают один и тот же результат. Выводы различаются только в тех случаях, когда рекомендация ссылается на более новую версию, но нет включенного репозитория, который содержит какую-либо более новую версию.

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

    Для печати только рекомендаций, ссылающихся на CVE или bugzilla, используйте параметр --with-cve или --with-bz. Когда используются эти переключатели, также изменяется выходной файл --list - вместо идентификатора указывается идентификатор CVE или bugzilla.

    Если задано и если не идентификатор, не тип (bugfix, enhancement, security/sec) не имя рекомендуемого пакета, не совпадает с <spec>, рекомендации не принимаются во внимание. Сопоставление чувствительно к регистру, и в случае рекомендации идентификаторов и имен пакетов, поддерживается подстановка.

    На вывод параметра --summary, влияет параметр конфигурации autocheck_running_kernel.

  Команда update-minimal

dnf [options] update-minimal
    Устаревший псевдоним для Команды upgrade-minimal.

  Команда обновления upgrade

dnf [options] upgrade
    Обновляет каждый пакет до последней версии, которая доступна и разрешима.

dnf [options] upgrade <package-spec>...
    Обновляет каждый указанный пакет до последней доступной версии. При необходимости обновляет зависимости.

dnf [options] upgrade <package-nevr-specs>...
    Обновляет пакеты до указанных версий.

dnf [options] upgrade @<spec>...
    Псевдоним для команды dnf module update.

    Если основной параметр конфигурации obsoletes имеет значение true или флаг --obsoletes, dnf будет включать в свои вычисления устаревшие пакеты. Для получения дополнительной информации см. obsoletes.

    Смотрите также Политика замены файлов конфигурации.

  Команда upgrade-minimal

dnf [options] upgrade-minimal
    Обновляет каждый пакет до последней доступной версии, которая содержит исправление, улучшение или исправление проблемы безопасности (security).

dnf [options] upgrade-minimal <package-spec>...
    Обновляет каждый указанный пакет до последней доступной версии, которая обеспечивает исправление, улучшение или исправление проблемы безопасности (security). При необходимости обновляет зависимости

  Команда update-to

dnf [options] update-to <package-nevr-specs>...
    Устаревший псевдоним для Команды обновления upgrade.

  Команда upgrade-to

dnf [options] upgrade-to <package-nevr-specs>...
    Устаревший псевдоним для Команды обновления upgrade.

УКАЗАНИЕ ПАКЕТОВ

Многие команды принимают параметр <package-spec> который выбирает пакет для операции. Аргумент <package-spec> сопоставляется с NEVRA пакета, provides и file provides.

<package-file-spec> похоже на <package-spec>, за исключением случаев, когда сопоставление не выполняется. Следовательно, <package-file-spec> сопоставляется только с NEVRA и file provides.

<package-name-spec> сопоставляется только с NEVRA.

  Маски

Спецификация пакета поддерживает тот же шаблон масок, что и командный интерпретатор, во всех трех вышеупомянутых пакетах он совпадает с (NEVRA, provides и file provides).

Поддерживаются следующие шаблоны:

*   Соответствует любому количеству символов.

?   Соответствует любому отдельному символу.

[]  Соответствует любому из вложенных символов. Пара символов, разделенных дефисом, обозначает выражение диапазона; любой символ, который попадает между этими двумя символами включительно, сопоставляется. Если первый символ после [ это ! или ^ тогда сопоставляется любой символ, не заключенный в скобки.

{}  Соответствует любому из списка строк, разделенных запятыми.

  Сопоставление NEVRA

При сопоставлении с NEVRA поддерживается частичное сопоставление. DNF пытается сопоставить спецификацию со следующим списком форм NEVRA (в порядке убывания приоритета):

•   name-[epoch:]version-release.arch

•   name.arch

•   name

•   name-[epoch:]version-release

•   name-[epoch:]version

    Обратите внимание, что name может содержать тире (например, package-with-dashes).

    Используется первая форма, соответствующая любым пакетам, а остальные формы не пробуются. Если ни одна из форм не соответствует ни одному из пакетов, делается попытка сопоставить <package-spec> с полным NEVRA пакета. Это имеет значение только в том случае, если маски присутствуют в <package-spec>.

    <package-spec> соответствует NEVRA точно так же, как <package-name-spec>, но в случае, если соответствие NEVRA не удается, он пытается также сопоставить с provides и file provides пакетов.

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

УКАЗАНИЕ ТОЧНЫХ ВЕРСИЙ ПАКЕТОВ

Команды, принимающие параметр <package-nevr-spec> нуждаются не только в имени пакета, но также в его версии, выпуске и, необязательно, в архитектуре. Кроме того, части версии может предшествовать эпоха, когда она релевантна (то есть эпоха отлична от нуля).

УКАЗАНИЕ PROVIDES

<provide-spec> в описании команды означает, что команда работает с пакетами, предоставляющими данную спецификацию. Это может быть либо явное предоставление, неявное предоставление (то есть имя пакета) или предоставление файла. Выбор чувствителен к регистру и поддерживается подстановка.

УКАЗАНИЕ ГРУПП

<group-spec> позволяет выбрать группы (окружение), над которыми должна работать конкретная операция. Это нечувствительная к регистру строка (поддерживающая подстановку символов), которая сопоставляется с идентификатором группы, каноническим именем и именем, переведенным в текущую локаль LC_MESSAGES (если это возможно).

УКАЗАНИЕ МОДУЛЕЙ

<module-spec> позволяет выбрать модули или профили, над которыми должна работать определенная операция.

Это в форме NAME:STREAM:VERSION:CONTEXT:ARCH/PROFILE и поддерживает следующие частичные формы:

•   NAME

•   NAME:STREAM

•   NAME:STREAM:VERSION

•   NAME:STREAM:VERSION:CONTEXT

•   все вышеперечисленные комбинации с ::ARCH (например. NAME::ARCH)

•   NAME:STREAM:VERSION:CONTEXT:ARCH

•   все вышеперечисленные комбинации с /PROFILE (например. NAME/PROFILE)

    Если поток не указан, используется включенный поток или поток по умолчанию, в этом порядке. Если профиль не указан, используется системный профиль по умолчанию или профиль 'default'.

УКАЗАНИЕ ТРАНЗАКЦИЙ

<transaction-spec> может быть в одной из нескольких форм. Если это целое число, оно указывает идентификатор транзакции. Указание last аналогично указанию идентификатора самой последней транзакции. Последняя форма last-<offset>, где <offset> - положительное целое число. Указывает смещенную транзакцию, предшествующую самой последней транзакции.

ФИЛЬТРАЦИЯ ПАКЕТОВ

Фильтрация пакетов отфильтровывает пакеты из вывода доступных пакетов, делая их невидимыми для большинства команд dnf. Они не могут быть использованы в транзакции. Пакеты могут быть отфильтрованы любой исключающей фильтрацией или модульной фильтрацией.

  Исключающая фильтрация

Исключающая фильтрация - это механизм, используемый пользователем или плагином DNF для изменения вывода доступных пакетов. Исключающая фильтрация может быть изменена с помощью параметров конфигурации includepkgs или excludepkgs в файлах конфигурации. Параметр командной строки --disableexcludes можно использовать для отмены исключений из файлов конфигурации. В дополнение к настроенным пользователем исключениям, плагины также могут расширить перечень исключенных пакетов. Чтобы отключить исключения из плагина DNF, вы можете использовать параметр командной строки --disableplugin.

Чтобы отключить все исключения, например, в команде установки install, вы можете использовать следующую комбинацию параметров командной строки:

dnf --disableexcludes=all --disableplugin=* install bash

  Модульная фильтрация

Cмотрите документацию по модульности для получения подробной информации о работе модульной фильтрация.

Благодаря модульности, в вывод доступных пакетов включены только пакеты RPM из потоков активных active модуля. Пакеты RPM из потоков неактивных inactive модулей, а также немодулярные пакеты с тем же именем или в виде пакета из потока активного active модуля, отфильтровываются. Модульная фильтрация не применяется к пакетам, добавленным из командной строки, установленным пакетам или пакетам из репозиториев с module_hotfixes=true в их файле .repo.

Отключение модульной фильтрации не рекомендуется, так как это может привести к выходу системы из строя. Чтобы отключить модульную фильтрацию для конкретного репозитория, укажите module_hotfixes=true в файле .repo или используйте --setopt=<repo_id>.module_hotfixes=true.

Чтобы обнаружить модуль, который содержит исключенный пакет, используйте dnf module provides.

СИНХРОНИЗАЦИЯ МЕТАДАННЫХ

Правильная работа DNF зависит от наличия доступа к актуальным данным из всех включенных репозиториев, но контакт с удаленными зеркалами при каждой операции значительно замедляет ее и снижает пропускную способность как для клиента, так и для поставщика репозитория. Параметр конфигурации репозитория metadata_expire (см. dnf.conf(5)) используется DNF для определения того, следует ли повторно синхронизировать конкретную локальную копию данных репозитория. Крайне важно, чтобы поставщики репозитория правильно установили этот параметр, а именно на значение, при котором гарантируется, что если конкретные метаданные были доступны на сервере во время T, тогда все пакеты, на которые он ссылается, все равно будут доступны для загрузки с сервера во время T + metadata_expire.

Для дальнейшего снижения нагрузки на полосу пропускания, некоторые из команд, для которых наличие актуальных метаданных не является критичным (например. команда list), не смотрят, не истек ли срок хранения репозитория, и всякий раз, когда какая-либо его версия доступна локально для учетной записи пользователя, она будет использоваться. Для использования без полномочий root, см. также переключатель --cacheonly. Обратите внимание, что во всех ситуациях пользователь может принудительно синхронизировать все включенные репозитории с помощью переключателя --refresh.

ПОЛИТИКА ЗАМЕНЫ ФАЙЛОВ КОНФИГУРАЦИИ

Обновленные пакеты могут заменить старые измененные файлы конфигурации новыми или сохранить старые файлы. Ни один из файлов на самом деле не заменяется. Конфликтующим файлам конфигурации RPM дает дополнительный суффикс к имени источника. Какой файл должен сохранять истинное имя после транзакции, не контролируется менеджером пакетов, а определяется самим пакетом в соответствии с инструкциями по упаковке.

ФАЙЛЫ

Кэшированные файлы
    /var/cache/dnf

Основная конфигурация
    /etc/dnf/dnf.conf

Репозитарий
    /etc/yum.repos.d/

СМОТРИТЕ ТАКЖЕ

•   dnf.conf(5), Справочник по настройке DNF

•   dnf-PLUGIN(8) для документации по плагинам DNF.

•   dnf.modularity(7), Обзор модульности.

•   DNF - домашняя страница проекта (https://github.com/rpm-software-management/dnf/)

•   Как сообщить об ошибке (https://github.com/rpm-software-management/dnf/wiki/Bug-Reporting)

•   YUM - домашняя страница проекта (http://yum.baseurl.org/)

АВТОР
См. раздел АВТОРЫ в исходном дистрибутиве DNF.

АВТОРСКОЕ ПРАВО
2012-2019, Red Hat, Лицензия под GPLv2+