DNF (менеджер пакетов): различия между версиями
[непроверенная версия] | [непроверенная версия] |
Нет описания правки |
РобоСтася (обсуждение | вклад) м checkwiki fixes (1, 2, 9, 17, 22, 26, 38, 48, 50, 52, 54, 64, 65, 66, 76, 81, 86, 88, 89, 101) |
||
(не показаны 2 промежуточные версии 2 участников) | |||
Строка 6: | Строка 6: | ||
| тип = [[Система управления пакетами]] |
| тип = [[Система управления пакетами]] |
||
| разработчик = [[Red Hat]] |
| разработчик = [[Red Hat]] |
||
| написана на = [[C (язык программирования)|C]], [[ |
| написана на = [[C (язык программирования)|C]], [[Python]] |
||
| интерфейс = CLI |
| интерфейс = CLI |
||
| операционные системы = [[Linux]] |
| операционные системы = [[Linux]] |
||
| языки интерфейса = English |
| языки интерфейса = English |
||
| первый выпуск = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} --> |
| первый выпуск = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} --> |
||
| состояние = microDNF станет заменой DNF, активное на данный |
| состояние = microDNF станет заменой DNF, активное на данный момент |
||
| лицензия = [[GNU General Public License#Version 2|GPL v2]] |
| лицензия = [[GNU General Public License#Version 2|GPL v2]] |
||
| сайт = {{URL|https://rpm-software-management.github.io/}} |
| сайт = {{URL|https://rpm-software-management.github.io/}} |
||
| дата тестовой версии = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} --> |
| дата тестовой версии = <!-- {{Start date and age|YYYY|MM|DD|df=yes/no}} --> |
||
}} |
}} |
||
'''DNF''' или '''Dandified YUM'''<ref>{{Cite web|url=https://fedoraproject.org/wiki/DNF|title=DNF|website=Fedora Project Wiki|accessdate= |
'''DNF''' или '''Dandified YUM'''<ref>{{Cite web|url=https://fedoraproject.org/wiki/DNF|title=DNF|website=Fedora Project Wiki|accessdate=2018-05-21|archive-date=2018-10-14|archive-url=https://web.archive.org/web/20181014204047/https://fedoraproject.org/wiki/DNF|deadlink=no}}</ref><ref>{{Cite web|url=https://dnf.readthedocs.io/en/latest/user_faq.html#what-does-dnf-stand-for|title=What does DNF stand for|website=DNF User's FAQ|accessdate=2018-05-21|archive-date=2018-10-14|archive-url=https://web.archive.org/web/20181014204116/https://dnf.readthedocs.io/en/latest/user_faq.html#what-does-dnf-stand-for|deadlink=no}}</ref><ref>{{Cite web|url=https://github.com/rpm-software-management/dnf/blob/master/README.rst|title=README.rst · rpm-software-management/dnf · GitHub|website=Github DNF Repository, commit 8174427421b995265c6297ebd64024ded099ecf0|accessdate=2018-05-21|archive-date=2020-06-05|archive-url=https://web.archive.org/web/20200605112751/https://github.com/rpm-software-management/dnf/blob/master/README.rst|deadlink=no}}</ref> — следующее поколение приложения [[Yum]], [[Система управления пакетами|менеджер пакетов]] для дистрибутивов ОС Linux на основе [[RPM]]-пакетов. DNF разрабатывался с 2011 года<ref>Adam Saunders [https://lwn.net/Articles/603993/ Fedora and DNF] {{Wayback|url=https://lwn.net/Articles/603993/ |date=20181014204308 }}, LWN July 2, 2014</ref> и был представлен в [[Fedora]] 18<ref name="DNF-Fedora">{{Cite web|url=http://www.linux-magazine.com/Online/Features/Will-DNF-Replace-Yum|date=2014|title=Will DNF Replace Yum?|first=Bruce|last=Byfield|website=[[Linux Magazine]]|accessdate=2015-05-28|archive-date=2015-09-26|archive-url=https://web.archive.org/web/20150926071643/http://www.linux-magazine.com/Online/Features/Will-DNF-Replace-Yum|deadlink=no}}</ref> и используется как основная система управления пакетами начиная с версии Fedora 22.<ref name="F22_released">{{Cite web|url=http://www.webupd8.org/2015/05/fedora-22-released-see-whats-new.html|title=Fedora 22 Released, See What`s New [Workstation]|author=Andrew|last=Andrew|date=2015-05-26|publisher=WebUpd8|accessdate=2015-05-28|archive-date=2015-09-25|archive-url=https://web.archive.org/web/20150925093141/http://www.webupd8.org/2015/05/fedora-22-released-see-whats-new.html|deadlink=no}}</ref> |
||
Предыдущий YUM имел несколько недостатков, и DNF был призван их решить. Среди них: низкая производительность, высокое потребление памяти и низкая скорость итеративного [[Топологическая сортировка|разрешения зависимостей]].<ref name="lwn580223">{{Cite web|url=https://lwn.net/Articles/580223/|title=DNF and Yum in Fedora|first=Jake|last=Edge|date=2014-01-15|publisher=[[LWN.net]]|accessdate=2015-03-29|archive-date=2015-09-30|archive-url=https://web.archive.org/web/20150930225233/https://lwn.net/Articles/580223/|deadlink=no}}</ref> DNF применил libsolv — внешний решатель зависимостей. |
Предыдущий YUM имел несколько недостатков, и DNF был призван их решить. Среди них: низкая производительность, высокое потребление памяти и низкая скорость итеративного [[Топологическая сортировка|разрешения зависимостей]].<ref name="lwn580223">{{Cite web|url=https://lwn.net/Articles/580223/|title=DNF and Yum in Fedora|first=Jake|last=Edge|date=2014-01-15|publisher=[[LWN.net]]|accessdate=2015-03-29|archive-date=2015-09-30|archive-url=https://web.archive.org/web/20150930225233/https://lwn.net/Articles/580223/|deadlink=no}}</ref> DNF применил libsolv — внешний решатель зависимостей. |
Текущая версия от 11:14, 14 сентября 2024
Dandified Yum | |
---|---|
| |
Тип | Система управления пакетами |
Разработчик | Red Hat |
Написана на | C, Python |
Интерфейс | CLI |
Операционная система | Linux |
Языки интерфейса | English |
Первый выпуск | 11 мая 2015 |
Последняя версия | |
Репозиторий |
github.com/rpm-software-… github.com/rpm-software-… |
Состояние | microDNF станет заменой DNF, активное на данный момент |
Лицензия | GPL v2 |
Сайт | rpm-software-management.github.io |
Медиафайлы на Викискладе |
DNF или Dandified YUM[2][3][4] — следующее поколение приложения Yum, менеджер пакетов для дистрибутивов ОС Linux на основе RPM-пакетов. DNF разрабатывался с 2011 года[5] и был представлен в Fedora 18[6] и используется как основная система управления пакетами начиная с версии Fedora 22.[7]
Предыдущий YUM имел несколько недостатков, и DNF был призван их решить. Среди них: низкая производительность, высокое потребление памяти и низкая скорость итеративного разрешения зависимостей.[8] DNF применил libsolv — внешний решатель зависимостей.
DNF управляет зависимостями RPM-пакетов и использует ряд существующих библиотек для работы с ними. Изначально проект был реализован на языке программирования Python, но ведутся работы по его переносу на язык С и C++[9][10] и перемещение большинства функций из Python в новую библиотеку libdnf.[11] libdnf уже используется в PackageKit, системе интерфейсов пакетных менеджеров для произвольных дистрибутивов Linux.[12]
Использование
[править | править код]DNF стал менеджером пакетов по умолчанию в Fedora начиная с версии 22 от мая 2015 года. Библиотека libdnf используется в проекте PackageKit. DNF является альтернативным менеджером пакетов в Mageia Linux начиная с версии 6, и может стать основным в будущем.[13]
Часть возможностей DNF были перенесены в версию YUM 4 от 2017 года, в том числе, ускоренное разрешение зависимостей[14][15].
Зависимости
[править | править код]libdnf
[править | править код]- Предоставляет API высокого уровня для DNF и базовых библиотек
- Язык Си, лицензия LGPLv2+
libsolv
[править | править код]- Бесплатный решатель зависимостей с использованием алгоритма SAT
- Служит для решения зависимостей и чтения списков пакетов из репозиториев
- Язык Си, новая лицензия BSD
librepo
[править | править код]- Библиотека предоставляет интерфейсы С и Python (по аналогии с libcurl) для скачивания метаданных пакетного репозитория Linux и самих пакетов
- Язык Си, лицензия LGPLv2+
libcomps
[править | править код]- Libcomps является альтернативой для библиотеки «yum.comps». Реализована на языке Си, имеет интерфейсы для python2 и python3.
- Язык Си, лицензия GPLv2+
Примечания
[править | править код]- ↑ Release 5.2.8.1 — 2024.
- ↑ DNF . Fedora Project Wiki. Дата обращения: 21 мая 2018. Архивировано 14 октября 2018 года.
- ↑ What does DNF stand for . DNF User's FAQ. Дата обращения: 21 мая 2018. Архивировано 14 октября 2018 года.
- ↑ README.rst · rpm-software-management/dnf · GitHub . Github DNF Repository, commit 8174427421b995265c6297ebd64024ded099ecf0. Дата обращения: 21 мая 2018. Архивировано 5 июня 2020 года.
- ↑ Adam Saunders Fedora and DNF Архивная копия от 14 октября 2018 на Wayback Machine, LWN July 2, 2014
- ↑ Byfield, Bruce Will DNF Replace Yum? Linux Magazine (2014). Дата обращения: 28 мая 2015. Архивировано 26 сентября 2015 года.
- ↑ Andrew Fedora 22 Released, See What`s New [Workstation] . WebUpd8 (26 мая 2015). Дата обращения: 28 мая 2015. Архивировано 25 сентября 2015 года.
- ↑ Edge, Jake DNF and Yum in Fedora . LWN.net (15 января 2014). Дата обращения: 29 марта 2015. Архивировано 30 сентября 2015 года.
- ↑ DNF 3: better performance and a move to C++ Архивная копия от 14 октября 2018 на Wayback Machine / LWN, March 28, 2018
- ↑ Announcing DNF 3 development Архивная копия от 18 сентября 2018 на Wayback Machine. Daniel Mach, Jaroslav Mracek, March 22, 2018
- ↑ Šilhan, Jan DNF into C initiative started . DNF blog (24 февраля 2016). Дата обращения: 5 июля 2017. Архивировано из оригинала 2 июля 2017 года.
- ↑ Aleksandersen, Daniel Use DNF rather than PackageKit on Fedora . Ctrl blog (5 июля 2017). Дата обращения: 7 августа 2017. Архивировано 7 августа 2017 года.
- ↑ Larabel, Michael Mageia To Offer DNF, But Will Keep Using URPMI By Default . Phoronix (5 сентября 2016). Дата обращения: 4 декабря 2017. Архивировано 6 декабря 2017 года.
- ↑ YUM 4 is available for testing – Blog.CentOS.org . Дата обращения: 21 октября 2018. Архивировано 21 октября 2018 года.
- ↑ OpenNews: Началось тестирование пакетного менеджера YUM 4 . Дата обращения: 21 октября 2018. Архивировано 21 октября 2018 года.
Ссылки
[править | править код]- rpm-software-management.github.io (англ.) — официальный сайт DNF