The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Доступен пакетный менеджер DNF 2.0, пришедший на смену Yum

26.12.2016 09:27

Опубликован второй значительный релиз пакетного менеджера DNF (2.0), который вобрал в себя улучшения, подготовленные после задействования DNF по умолчанию в Fedora Linux и сосредоточенный на улучшении совместимости с YUM.

В DNF 2.0 реализованы более понятные уведомления о проблемах с зависимостями, организован показ списка слабых зависимостей в суммарных параметрах транзакции, добавлена улучшенная система подсказки для доступных команд. В основной состав DNF перемещён плагин Repoquery. Добавлены новые unit-файлы для systemd: dnf-automatic-notifyonly, dnf-automatic-download и dnf-automatic-install.

Реализованы команды и опции:

  • "dnf remove --duplicates" и "dnf remove --oldinstallonly" для удаления старых версий дублирующих друг друга пакетов и старых пакетов категории installonly.
  • Новая команда "dnf repoquery" (ранее данная функциональность развивалась как отдельный плагин) для поиска пакетов во внешних репозиториях (аналог "rpm -q" для удалённого репозитория);
  • Добавлена опция "--repo репозиторий" для ограничения операций только репозиторием, выбранным по идентификатору или маске.
  • Новая команда "dnf check" для выполнения проверки целостности локальной БД packagedb и вывода информации о возможных проблемах. Поддерживаются опции для ограничения проверки отдельными областями, например "--dependencies", "--duplicates", "--obsoleted и "--provides".
  • Новая команда "dnf upgrade-minimal", позволяющая обновить каждый пакет до самой свежей версии с улучшениями или исправлениями ошибок и уязвимостей.
  • Новые опции для выбора уровня безопасности: bugfix, enhancement, newpackage, security, advisory, bzs, cves, sec-severity и secseverity.

К сожалению, некоторые изменения в выпуске, связанные с поддержкой особенностей работы YUM, привели к нарушению полной совместимости с веткой DNF-1. В том числе возвращено свойственное для YUM поведение для настроек файла конфигурации, например опции "include" и "exclude" заменены на "includepkgs" и "excludepkgs", для установки опциональных зависимостей вместо команды "with-optional" теперь предлагается параметр "--with-optional", вместо "dnf search all" - "dnf search --all", вместо "dnf makecache timer" - "dnf makecache --timer", вместо "dnf list command" - "dnf list --command", вместо "dnf repolist [enabled|disabled|all]" - "dnf repolist [--enabled|--disabled|--all]" и т.д. Также изменены аргументы в некоторых вызовах Python API.

Напомним, что DNF является ответвлением от Yum 3.4, созданным для развития некоторых новых идей, таких как использование библиотеки hawkey в качестве бэкенда для разрешения зависимостей. В качестве основных проблем Yum, которые побудили к созданию DNF, называют некачественную документацию на API, проблемный алгоритм разрешения зависимостей и невозможность рефакторинга внутренних функций. По сравнению с Yum, DNF обладает заметно более высокой скоростью работы, низким потреблением памяти и более качественным управлением зависимостями. Кроме того, DNF может выполняться как при помощи Python 2, так и Python 3, что позволило реализовать план по поставке Python 3 в Fedora по умолчанию.

Для разрешения зависимостей в DNF задействован SAT solver, реализованный в библиотеке libsolv (hawkey выступает в роли надстройки над libsolv), созданной в рамках проекта openSUSE. Обработки метаданных и загрузка пакетов выполняется через librepo. Для расширения функциональности DNF предоставляет новый, не совместимый с Yum, API для плагинов и интеграции с другими приложениями, такими как инсталлятор Anaconda. На уровне опций командной строки и файлов конфигурации, DNF почти полностью совместим с YUM.

  1. Главная ссылка к новости (http://dnf.baseurl.org/2016/12...)
  2. OpenNews: Пакетный менеджер DNF будет переработан на языке Си
  3. OpenNews: Увидел свет пакетный менеджер DNF 1.0, пришедший на смену Yum
  4. OpenNews: Бета-выпуск Fedora 22, перешедший на пакетный менеджер DNF
  5. OpenNews: Доступен пакетный менеджер RPM 4.13.0
  6. OpenNews: Выпуск пакетного менеджера Apt 1.3
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/45730-dnf
Ключевые слова: dnf, yum, packet
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (65) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Шоколадный заяц (?), 09:33, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Кто-нибудь знает, CentOS/RHEL перейдет на это?
     
     
  • 2.3, Аноним (-), 09:40, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –16 +/
    CentOS перейдёт, скорее всего. REHL только когда оттестируют на федоре.
     
  • 2.4, Аноним (-), 09:40, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Конечно. В следующем мажорном релизе.
     
  • 2.5, Аноним (-), 09:41, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Конечно, оно изначально для грядущего RHEL 8 и разрабатывалось.
     

  • 1.2, Аноним (-), 09:38, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Rhel строится из fedora.
     
     
  • 2.7, Аноним (-), 10:22, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –6 +/
    правильно - обкатать на хомячках баги - и продать их работу за бабло.
     
     
  • 3.8, Плазма полетела (?), 10:43, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Поэтому господа сидят на Арче.
     
     
  • 4.10, anonimus (?), 12:02, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +10 +/
    Я тебя удивлю, но арчеводы являются тестерами почти для всех пакетов;)
     
     
  • 5.20, лютый жабист__ (?), 13:27, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +4 +/
    При этом у нас проблемы фиксятся на момент фикшенья апстримом, т.е. за считанные часы или дни с случае серьёзных грабель. А в стабильных ЦентОсах и Дебльянах по нескольку лет с одними и теми же багами сидят, причём иногда очень жирными. Знаем, плавали...
     
     
  • 6.21, Аноним (-), 13:30, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Centos и debian называются стабильными не потому что в них нет багов, а потому что в них не происходит изменений. Серьёзными являются баги безопасности и они фиксятся.
     
  • 6.70, anonimus (?), 13:46, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В обсуждении речь шла о том кто больший тестер пакетов - юзеры федоры или юзеры арча. Но никто не отрицает что обе группы являются таковыми. Мне нравится идеология арча, но не нравится его недостаточая стабильность при этом. Сейчас сижу на manjaro за счет дополнительного тестирования пакетов дистрибутив достаточно стабилен и при этом идеология арча сохранена.
     
  • 4.39, ваноним (?), 16:01, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    на gentoo же
     
  • 4.46, vitvegl (?), 16:58, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    неплох, но слишком зависим от апстрима (патчи не делают относительно). За времен kernel < 3.6 было все еще хорошо, последний раз смотрел - с gtk3 проблемы с рендерингом, nm-плагины разваливаются, kf5 вообще не пригоден
     

  • 1.6, Аноним (-), 10:18, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Добавлены новые unit-файлы для systemd: dnf-automatic-notifyonly, dnf-automatic-download и dnf-automatic-download.

    для systemd  надо 2 unit'a для download.. по другому никак

     
     
  • 2.14, anonimous (?), 12:30, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > New systemd units dnf-automatic-notifyonly, dnf-automatic-download, dnf-automatic-download were added for a better customizability of dnf-automatic.

    Забавно, что и в оригинале так же.

     
     
  • 3.23, Аноним (-), 13:33, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    "dnf-automatic-notifyonly, dnf-automatic-download, dnf-automatic-install" http://dnf.readthedocs.io/en/latest/automatic.html
     
  • 3.34, Ан (??), 14:47, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Помоему второе dnf-automatic-download не относится уже к самому перечислению, а является пояснением что это такое за dnf-automatic-download.
     
  • 2.22, Аноним (-), 13:32, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А без systemd мейнтенеру надо писать скрипты. По-другому никак.
     
     
  • 3.29, gogo (?), 14:33, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    yum-updatesd?
     
     
  • 4.48, Аноним (-), 17:15, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Что yum-updatesd? А как он по твоему вызываться будет?
     
     
  • 5.50, Аноним (-), 17:22, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    мисье о Cron знает ?
     
     
  • 6.52, vi (ok), 18:13, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > мисье о Cron знает ?

    https://imgur.com/gallery/D1XK8nk

     

  • 1.9, Аноним (-), 11:56, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В том числе возвращено свойственное для YUM поведение для настроек файла конфигурации, например опции "include" и "exclude" заменены на "includepkgs" и "excludepkgs"

    Поясните, ведь в yum есть опции inclue/exclude, зачем нужны includepkgs/excludepkgs "для совместимости"?

     
     
  • 2.18, Аноним (-), 13:11, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    В yum есть exclude и includepkgs, в dnf-1 - include и exclude, в dnf-2 - includepkgs, excludepkgs и exclude=excludepkgs.
     
     
  • 3.41, Аноним (-), 16:38, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Явно готовятся к интеграции в очередной rhel
     

  • 1.11, Аноним (-), 12:09, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Не прошло и ста лет пока не отказались от Python версии пакетного менеджера. Надеюсь dnf то хоть на Си писан?
     
     
  • 2.16, Аноним (-), 13:04, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Не прошло и ста лет пока не отказались от Python версии пакетного менеджера. Надеюсь dnf то хоть на Си писан?

    Нет. На python 3

     

  • 1.12, rh (?), 12:10, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    зачем менять yum???!!! ну скажите мне зачем?
     
     
  • 2.13, Аноним (-), 12:18, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Зачем слезать с деревьев? Действительно. К черту прогресс.
     
  • 2.15, Меломан1 (?), 12:40, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > зачем менять yum???!!! ну скажите мне зачем?

    DNF веселее YUM.

     
  • 2.17, bormotov (?), 13:07, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    в заметке же написано какие проблемы решали при разработке DNF, кажется даже по-русски.
     
  • 2.19, Аноним (-), 13:16, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > зачем менять yum???!!! ну скажите мне зачем?

    yum очень топорно и тупо в лоб строил дерево зависимосией, а при проблемах в нем начинал перестраивать его итеративно по нескольку раз. В итоге обновление тысячи пакетов при одной битой зависимости могло вылиться в часовой пересчет дерева. dnf же использует satsolver и любое дерево обсчитывает за секунды/десятки секунд. Т.е. поддерживаемость сорцов yum оказалась низкой, получилось проще переписать его, чем внедрить satsolver в существующий код.

     
  • 2.26, angra (ok), 14:20, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Хотя бы потому, что оно жрет память сотнями мегабайт и на контейнерах с <512MB нередко  становится нерабочим. Но даже при достаточной памяти оно может настолько долго думать, что приходится самостоятельно разбивать действия на элементарные и скармливать ему по частям или вообще напрямую с rpm возится.  
     
  • 2.31, Sw00p_aka_Jerom (ok), 14:42, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Мозги бы им лучше поменять, а то с каждым новым индусом новый пакетный менеджер будет появляться, никто блять не хочет думать архитектурно и основательно, строили бы так дома как пилят ПО, вызывает отвращение  с точки зрения искусства
     
     
  • 3.32, A.Stahl (ok), 14:45, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    С точки зрения искусства, мазня ван Гога -- шедевр. В чёрту искусство.
     
     
  • 4.51, Sw00p aka Jerom (?), 17:41, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –2 +/
    мазня ван гога не есть архитектурное проектирование, где важна математическая точность, (искусство тут имелось в смысле математической (геометрической) точности и изящества)
     
  • 2.65, нет (??), 09:56, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    зачем менять юм? пепельница забилась, в каментах выше раскрыли тему
     

  • 1.24, Necrogrinder (ok), 13:57, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Кто объяснит почему eopkg из SolusOS и pacman из Arch такие быстрые, а dnf и apt намного медленнее их? Ну в плане скорости установки обновлений и так далее. В чём такая колоссальная разница скорости?
     
     
  • 2.25, Аноним (-), 14:12, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    есть еще emerge, который тоже не быстрый.
     
     
  • 3.64, Аноним (-), 08:42, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Быстрота emarge сильно зависит от того, насколько сильно кастомизируются use-флаги и используется смешивание веток.
     
  • 2.27, angra (ok), 14:25, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    apt сам по себе шустрый, тормозит dpkg. Получается забавная ситуация, в debian-based быстрый apt и тормознутый dpkg, а в rhel-based тормознутый yum и шустрый rpm.


     
     
  • 3.45, vitvegl (?), 16:54, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    да, pacman >= 5.0 уже не тот (archlinux). rpm5 ничем не быстрее rpm4 (визуально). Остается попробовать "гибрид" backend rpm + frontend apt (тот, что в альте)
     
  • 3.63, Аноним (-), 08:27, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Именно поэтому я пользуясь Альтом с его apt-rpm.
     
  • 2.37, мякмяк (?), 15:49, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    наверное, потому что мейнстрим-хомячки должны страдать от стабильности.
     

  • 1.28, Аноним (-), 14:26, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Есть где-нибудь сравнение производительности DNF и YUM?
     
     
  • 2.30, Аноним (-), 14:35, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Тебе зачем? если yum скоро никто поддерживать не будет? везде останется dnf
     
     
  • 3.33, Аноним (-), 14:47, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Жри что дают и не задавай вопросов?

    Если производительнее, то насколько? А то если это пол процента, то нафиг такие переходы.

     
     
  • 4.36, Аноним (-), 15:18, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Потратить один раз пять минут и переучиться будет быстрее, чем многократно тратить часы и дни на самостоятельную поддержку yum в новых дистрибутивах, и потом радоваться, что все работает как было, и не надо переучиваться. Пока что-нибудь не сломается, тогда надо снова лезть и ковыряться. А потом снова. По мне так оно того не стоит. Хотя осознание приходит далеко не сразу.
     
     
  • 5.38, Аноним (-), 15:58, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Да ноу проблем. У меня только CentOS. Интересно когда ждать. К 2019-му? )
     
     
  • 6.71, Аноним (-), 14:50, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Да ноу проблем. У меня только CentOS. Интересно когда ждать. К 2019-му?
    > )

    Ну когда будет, тогда и будет. Мой комментарий больше относился к любителям поставить yum на новые версии Федоры. А такие есть.

     
  • 4.49, funt (?), 17:18, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    О чём вы говорите?
    Там кого-то заботят ваши проблемы, думаете?
    Они даже nmcli поломали зачем-то. В новой шапке (7.3) опции работают по-другому.
    Спрашивается: ЗАЧЕМ?!
     
  • 4.58, Led (ok), 22:05, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Жри что дают и не задавай вопросов?

    Нет, не так. "Жри что дают и учи уроки".

     
  • 4.66, Аноним (-), 12:16, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Производительнее в сотни раз, что особенно заметно при обновлении большого количества пакетов. dnf при этом является форком yum-а, только основательно переписанным.
     
     
  • 5.68, Akronym (?), 12:24, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И часто вы на серверах большое количество пакетов обновляете?
     

  • 1.35, ZloySergant (ok), 15:11, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Добавлены новые unit-файлы для systemd: dnf-automatic-notifyonly, dnf-automatic-download и dnf-automatic-download.

    Что-то я туплю, кажется.

     
  • 1.40, Cmp (?), 16:21, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А где те крикуны, которые заявляли, что на питоне плохо писать нельзя?
     
     
  • 2.42, Аноним (-), 16:41, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А где те крикуны, которые заявляли, что на питоне плохо писать нельзя?

    Плохо ни на чем нельзя писать. Стыдно должно быть писать плохо

     
     
  • 3.43, Аноним (-), 16:50, 26/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Стыдно делать ошибки, когда говоришь или пишешь на русском языке. А эти умники хотят еще  на Python писать правильно.

    И если в голове каша - то и получаем ****мо на любом языке.

     

  • 1.44, vitvegl (?), 16:51, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    научился делать autoremove "сирот" ? fc22-23 было поломано
     
     
  • 2.67, Аноним (-), 12:19, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > научился делать autoremove "сирот" ? fc22-23 было поломано

    Да, в 2.0 автоматически удаляет нетребуемые никем зависимости, как при yum remove --remove-leaves.

     

  • 1.53, vitalikp (?), 19:30, 26/12/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Нет уж, лучше старый добрый yum нежели эта поделка.
    yum просто работает и делает то, что от него ждешь, а чем занимается dnf мне не понятно.
     
     
  • 2.62, cmp (ok), 06:35, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Угумс, разворачиваем кэширующую днску на центосе с гигом оперативы, отдаем по максимуму под кэш - радуемся, потом делаем юм апдейт, пару часов ждем пока ядро пытается свопить, а потом плачем по убитому оомкиллиром процессу. Можно конечно добить оперативы, но это резервирование конкретно под юм получатся, ни для чего другого она использоваться не будет.
     
     
  • 3.69, Akronym (?), 12:26, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Угумс, разворачиваем кэширующую днску на центосе с гигом оперативы, отдаем по максимуму
    > под кэш - радуемся, потом делаем юм апдейт, пару часов ждем
    > пока ядро пытается свопить, а потом плачем по убитому оомкиллиром процессу.
    > Можно конечно добить оперативы, но это резервирование конкретно под юм получатся,
    > ни для чего другого она использоваться не будет.

    В конкретно данном случае виновато ваше неумение пользоваться системой, а не юм.
    Не обновляйте все пакеты разом и будет вам счастье.

     
     
  • 4.72, Аноним (-), 19:33, 27/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Это не Apple-way. Все должно работать быстро, не занимать память и вести себя предсказуемо, исполняя основную задачу. А если у вас при использовании yum оперативки не хватило, место на HDD закончилось или проц перегрелся - это означает, что yum кривой, а не то, что я им пользоваться не умею.
     
  • 4.73, Ненонимус (?), 17:17, 29/12/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > В конкретно данном случае виновато ваше неумение пользоваться системой, а не юм.

    Глупости

    > Не обновляйте все пакеты разом и будет вам счастье.

    Будешь апгрейдить систему - приходи, расскажешь как это тебе удалось

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру