DNF была создана на замену утилиты управления пакетами «YUM» в дистрибутивах на основе Red Hat, а именно RHEL, CentOS и Fedora и т. д., то есть всех тех, которые используют менеджер пакетов RPM.
YUM (сокращение от Yellowdog Updater, Modified) — это бесплатная утилита с открытым исходным кодом на основе командной строки, выпущенная под лицензией GNU General Public License и в основном написанная на языке программирования Python. YUM был разработан для управления и обновления RedHat Linux в Университете Дьюка, позже он получил широкое признание и стал менеджером пакетов RedHat Enterprise Linux, Fedora, CentOS и других дистрибутивов Linux на основе RPM. Его часто называют «Your Package Manager» («вашим менеджером пакетов»), что неофициально часто используют профессионалы Linux.
- 20 примеров команд yum для управления пакетами
- 20 практических примеров команд RPM в Linux
Идея заменить Yum на DNF
Алеш Козумплик, разработчик проекта DNF, является сотрудником RedHat. Он говорит:
Fedora 38 Как установить | 2023 | В ПАРУ КЛИКОВ
«Впервые в 2009 году, работая над «Anaconda» — установщиком системы, он получил представление о работе с Linux. Он хотел работать над совершенно другим проектом, который позволил бы ему изучить инструмент для работы с пакетами в Fedora».
Недостатки Yum, которые привели к основанию DNF:
- Разрешение зависимостей YUM является кошмаром и было разрешено в DNF с помощью библиотеки SUSE libsolv и оболочки Python вместе с C Hawkey.
- У YUM нет документированного API.
- Создавать новые функции сложно.
- Нет поддержки других расширений, кроме Python.
- Меньшие затраты памяти и меньшая автоматическая синхронизация метаданных — процесс, требующий много времени.
Алеш Козумплик говорит, что у него нет другого выбора, кроме как разветвить YUM и разработать DNF. Сопровождающий пакета YUM не был готов реализовать эти изменения. YUM имеет около 59000 LOC, тогда как DNF имеет 29000 LOC (строк кода).
DNF впервые показала своё присутствие в Fedora 18. Fedora 20 была первым дистрибутивом Linux, который предлагал пользователям использовать функциональность DNF вместо YUM.
Расположение файла конфигурации dnf по умолчанию: /etc/dnf/dnf.conf.
1. Как проверить версию DNF
Чтобы проверить версию DNF, установленную в вашей системе, выполните команду:
dnf —version
2. Список включённых репозиториев DNF
Параметр «repolist» с помощью команды dnf отобразит все включённые репозитории в вашей системе.
dnf repolist
3. Как вывести все включённые и отключённые репозитории DNF
Параметр «repolist all» распечатает все включённые и отключённые репозитории в вашей системе.
dnf repolist all
4. Как вывести все доступные и установленные пакеты с помощью DNF
ДЕТАЛЬНАЯ НАСТРОЙКА FEDORA LINUX 38 | FEDORA ZERO (2023)
Команда «dnf list» выведет список всех доступных пакетов из всех репозиториев и установленных пакетов в вашей системе Linux.
dnf list
5. Как узнать все установленные пакеты с помощью DNF
А команда «dnf list» показывает все доступные/установленные пакеты из всех репозиториев. Однако у вас есть возможность вывести список только установленных пакетов с помощью опции «list installed», как показано ниже.
dnf list installed
6. Как узнать все доступные пакеты с помощью DNF
Точно так же опция «list available» отобразит все пакеты, доступные для установки из всех включённых репозиториев.
dnf list available
7. Как найти пакет с помощью DNF
Если вы не знаете точное имя пакета, который вы хотите установить, в такой ситуации вы можете использовать опцию «search» с командой dnf для поиска пакета, который соответствует слову или строке (скажем, nano).
dnf search nano
8. Как узнать, какому пакету принадлежит файл?
Параметр dnf «provides» находит имя пакета, который содержит конкретный файл или подпакет. Например, если вы хотите узнать, какой пакет в вашей системе создал файл /bin/bash:
dnf provides /bin/bash
9. Как получить подробную информацию о пакете с помощью DNF
Предположим, вы хотите узнать информацию о пакете перед его установкой в систему. Вы можете использовать переключатель «info», чтобы получить подробную информацию о пакете (например, nano), как показано ниже.
dnf info nano
10. Как установить пакет с DNF
Чтобы установить пакет, просто запустите приведённую ниже команду, она автоматически разрешит и установит все необходимые зависимости для указанного пакета:
dnf install ПАКЕТ
sudo dnf install nano
11. Как обновить пакет с помощью DNF
Вы можете обновить только определённый пакет (например, systemd) и оставить всё остальное в системе нетронутым.
sudo dnf update systemd
12. Как проверить наличие обновлений системы с помощью DNF
Чтобы проверить обновления для всех пакетов программ, установленных в системе, выполните следующую команду
dnf check-update
13. Как обновить все системные пакеты программ с помощью DNF
Вы можете обновить всю систему, включая все установленные пакеты, с помощью следующих команд.
sudo dnf update
sudo dnf upgrade
14. Как удалить пакет с помощью DNF
Чтобы удалить или стереть любой нежелательный пакет (например, nano), вы можете использовать переключатель «remove» или «erase» с командой dnf, примеры команд:
sudo dnf remove nano
sudo dnf erase nano
15. Как удалить ненужные пакеты с помощью DNF
Те пакеты, которые были установлены для удовлетворения зависимости, могут оказаться бесполезными, если не будут использоваться другими приложениями. Чтобы удалить эти сиротские пакеты, выполните следующую команду.
sudo dnf autoremove
16. Как удалить кэшированные пакеты с помощью DNF
Часто мы сталкиваемся с устаревшими заголовками и незавершёнными транзакциями, что приводит к ошибке при выполнении dnf. Мы можем очистить все кэшированные пакеты и заголовки, содержащие информацию об удалённых пакетах, просто выполнив:
sudo dnf clean all
17. Как получить справку по конкретной команде DNF
Вы можете получить помощь по любой конкретной команде dnf (скажем, clean), просто выполнив приведённую ниже команду.
dnf help clean
18. Как узнать все команды и параметры DNF
Чтобы вывести справку по всем доступным командам и параметрам dnf, просто введите:
dnf help
19. Как посмотреть историю команд DNF
Вы можете вызвать историю dnf, чтобы просмотреть список уже выполненных команд dnf. Следующей командой вы можете узнать, что было установлено/удалено, для каждого действия будет присутствовать отметка времени.
dnf history
20. Как вывести все групповые пакеты
Команда «dnf grouplist» распечатает все доступные или установленные пакеты, если ничего не упомянуто (не названа имя группы), отобразятся все известные группы.
dnf grouplist
21. Как установить групповой пакет с помощью DNF
Чтобы установить группу пакетов, объединённых вместе в виде группового пакета (скажем, Сетевые серверы), выполните следующую команду:
sudo dnf groupinstall ‘Сетевые серверы’
22. Обновление группового пакета
Давайте обновим групповой пакет (скажем, Сетевые серверы), выполнив следующую команду.
sudo dnf groupupdate ‘Сетевые серверы’
23. Удаление группового пакета
Как отобразить список установленных пакетов в Fedora?
Системные администраторы выполняют различные действия, чтобы настроить систему и запустить ее. Одна из них — анализ установки и удаления пакетов из системы. Иногда вам может понадобиться отобразить список пакетов, которые в настоящее время установлены в вашей системе.
Я уже обсуждал, как показать список установленных пакетов на Debianдистрибутив на основе Linux.
Сегодня в этой статье я расскажу о командах для вывода списка установленных пакетов в системе Fedora. В конце вы также сможете проверить, установлен ли конкретный пакет или нет.
Список всех пакетов
Чтобы отобразить список пакетов в Fedora, вы можете использовать команды dnf или rpm. Откройте свой терминал и используйте данную команду, чтобы отобразить список всех пакетов, установленных в вашей системе Fedora –
rpm -qa
Вы можете комбинировать приведенную выше команду с более или менее, чтобы сделать вывод читаемым на экране.
rpm -qa | more
В более новых версиях Fedora Linux вы можете использовать диспетчер пакетов dnf для отображения всех пакетов, установленных в вашей системе. Теперь используйте данную команду, чтобы отобразить список всех пакетов, установленных с помощью команды dnf –
dnf list installed
Список пакетов, установленных пользователем
Вы можете проверить установленные пользователем пакеты в вашей системе Fedora с помощью данной команды –
dnf history userinstalled
Это отобразит вывод, как показано на изображении ниже.
Проверьте, установлен ли определенный пакет или нет
Используя данную команду в своем терминале, вы можете проверить, установлен ли конкретный пакет в вашей системе Fedora или нет.
dnf list installed | grep vlc
Здесь в моей системе установлено имя пакета vlc, поэтому будет отображаться приведенная выше команда —
Показать список потерянных пакетов
Потерянные пакеты — это пакеты, которые больше не требуются системе. Вы можете отобразить список потерянных пакетов, используя –
rpmorphan
Если указанная выше команда не установлена, сначала установите ее с помощью данной команды:
sudo dnf -y install rpmorphan
Вы можете очистить потерянные пакеты, используя –
sudo dnf autoremove
Заключение
Fedora список установленных программ
Библиотека сайта rus-linux.net
Утилита командной строки yum предоставляет все возможности для установки, удаления программных rpm-пакетов, обновления системы и отдельных приложений, то есть представляет собой самодостаточную систему управления пакетами ПО. Однако для некоторых пользователй предпочтительнее работать не в командной строке, а в графической оболочке. В дистрибутиве Fedora имеются два графических приложения для управления программным обеспечением, представляющих собой просто графические надстройки над той же утилитой yum . Программа pup обеспечивает графический интерфейс для обновления программного обеспечения, а приложение pirut — это графичекая оболочка для установки и удаления программ.
Оба эти приложения можно запустить, воспользовавшись пунктом «Система» главного меню KDE. Программа pup в русифицированной версии скрывается под именем «Обновление пакетов», а pirut носит название «Установка/удаление программ». Естественно, для запуска любой из этих программ требуется знание пароля суперпользователя.
Обновление программного обеспечения с помощью Pup
Выбрав пункт меню «Обновление пакетов» и введя пароль root-а, вы увидите окно, изображенное на рис. 1. Только список пакетов, которые могут быть обновлены, у вас будет, естественно, отличаться.
Рис. 1.
В этом списке приведены все пакеты, для которых доступны обновления. По умолчанию, все они помечены к установке в вашей системе. Если вы не хотите обновлять какой-то из пакетов, нужно снять отметку в квадратике слева от названия соотвтествующего пакета, что делается щелчком левой кнопки мыши.
Некоторые пакеты имеют дополнительную пометку в виде круговой стрелки, что указывает на то, что сделанные при обновлении изменения вступят в силу только после следующей перезагрузки системы.
Если вы хотите получить более подробную информацию о обновляемом пакете, нужно переместить подсветку на его название и щелкнуть по треугольничку, обозначеному словами «Подробнее об обновлении»
Завершив выбор пакетов для обновления, щелкните по экранной кнопке Применить обновления. Программа проверит зависимости, обеспечивая наличие всего необходимого для нормального функционирования обновляемых пакетов. Если нужно допольнительно установить какое-то ПО, появится диалоговое окно, информирующее о том, какие пакеты требуется установить дополнительно. Если вы согласны с предлагаемым вариантом обновления, щелкните по экранной кнопке «Продолжить».
Выбранные пакеты будут скачаны из репозиториев и установлены. Если для задействования каких-то изменений требуется перезагрузка, в завершение процесса будет выдана соответствующая информация.
Уведомление о наличии обновлений
- Обновить — проверить наличие новых обновлений;
- Просмотреть обновления — запускает Pup, позволяя вам узнать подробности предлагаемых обновлений, отменть некоторые из них и запустить собствено процесс обновления;
- Применить обновления
- Выйти — закрывает Puplet до следующего старта системы.
Управление программным обеспечением с помощью Pirut
Рассмотренная выше утилита Pup предназначена для «тотального» обновления вашей системы. С ее помощью трудно осуществлять выборочное обновление отдельных пакетов. А для удаления установленных пакетов она вообще не предназначена. Более гибким инструментом для управления программным обеспечением в вашей системе является утилита Pirut. Она запускается из меню «Система» через пункт «Установка/удаление программ» (потребуется знание пароля root -а.
Просмотр перечня установленного ПО
Программа по умолчанию стартует в режиме Обзор (рис.2).
Рис. 2.
В этом режиме перечень установленных пакетов организован в виде групп, причем в левом поле отображается список групп верхнего уровня, в правом поле — подкатегории той группы, которая выделена слева. Ниже этих двух основных полей расположено поле справки, в котором дается краткая характеристика той подкатегории, которая подсвечена в правом перечне.
Если в правом перечне проставлена галочка рядом с наванием подкатегории, значит какие-то приложения из этой категории в системе установлены (не обязательно все). Число установленных приложений указано ниже поля справки. Если щелкнуть по экранной клавише «Дополнительные пакеты», вы увидите полный список пакетов данной подкатегории. Установленные пакеты помечены в этом списке галочками.
Установка пакетов
Разберем пример установки пакета с помощью программы Pirut на примере установки программы Banshee, которая предназначена для управления вышей коллекцией музыки. Для установки этой программы надо выбрать группу «Приложения» и подкатегорию «Звук и видео», открыть список приложений в этой категории и проставить галочку в квадрате возле названия программы (рис.3)
Рис. 3.
За один раз можно отметить таким образом любое число дополнительных пакетов в одной или нескольких категориях. После этого закрываем окно со списком пакетов и щелкаем по экранной кнопке «Применить» (см. рис.2). На экране появится окно (рис.4), в котором будет выведен список тех пакетов, которые вы решили установить. Здесь вы имеете возможность вернуться назад и что-то изменить в вашем выборе.
Рис. 4.
Зависимости
Если вы подтвердите свой выбор щелчком по экранной кнопке «Продолжить», Pirut займется проверкой зависимостей выбранных пакетов (рис.5)
Рис. 5.
Этот процесс завершается выдачей списка пакетов, которые нужно установить дополнительно для разрешения зависимостей. В моем случае, как видно на рис.6, установка пакета Banshee вызвала необходимость установить достаточно большое количество других пакетов. Если вы согласны с этим, щелкаете по экранной кнопке «Прдолжить».
Рис. 6.
Начинается перекачка нужных пакетов из репозиториев (процесс достаточно длительный)
Рис. 7.
после чего идет собственно инсталляция пакетов (ниже прогрессбара появляется наименование устанавливаемого пакета, я просто не поймал нужный момент для съемки скриншота):
Рис. 8.
и выдается сообщение о том, что установка завершена
Рис. 9.
Удаление пакетов
Для того, чтобы удалить из системы ранее установленный пакет, достаточно снять галочку рядом с наименованием пакета, после чего щелкнуть по экранной кнопке «Применить». Я для примера попытался удалить пакет akode, как вы видите на рис.10:
Рис. 10.
При удалении пакета может возникнуть ситуация, когда удаляемый пакет необходим для нормального функционирования каких-то других пакетов (заисимости, что поделаешь!). В таком случае Pirut предлагает удалить и те пакеты, которые зависят от указанного вами. Вот и у меня такая ситуация возникла (рис.11):
Рис. 11.
Внимательно просмотрите список на предмет того, не нужны ли вам какие-то из удаляемых пакетов. Возможно их надо будет восстановить позже, либо отказаться от задуманной операции удаления пакета. Поскольку я не хотел удалять пакеты kdemultimedia*, я отказался от дальнейших действий.
Поиск программного обеспечения
Кроме вкладки «Обзор» вы видите в окне программы Pirut (рис.2) еще вкладки «Поиск» и «Список». Вкладка «Поиск» (рис.12) позволяет искать как установленные в системе пакеты, так и доступные пакеты в заданных репозиториях. Если, для примера, задать в окне поиска тот же пакет Banshee и опцию поиска всех пакетов, то получим примерно такой результат, как на рис. 12:
Рис. 12.
Как видите, находятся не только пакеты, соответствующие указанному запросу, но и каким-то образом зависящие от них. Если щелкнуть по надписи Package Details, то получим краткую информацию о том пакете, название которого подсвечено в данный момент.
Проставив или сняв галочки против наименований перечисленных в этом окне пакетов и щелкнув по кнопке «Применить», можно заказать установку или удаление соответствующих пакетов.
Вкладка «Список»
Если щелкнуть по вкладке «Список» в окне Менеджера пакетов Pirut, то вначале появится окно, изображенное на рис. 13, то есть программа собирает сведения о всех установленных и доступных пакетах.
Рис. 13.
Результат этого исследования будет выведен в виде списка, изображенного на рис. 14.
Рис. 14.
Установленные пакеты помечены жирными галочками. Можно отобразить только их (проставив отметку напротив «Installed packages») или только доступные для установки пакеты, пока еще отсутствующие в системе («Available packages»). Как и раньше, можно в этом окне задать установку или удаление каких-то пакетов, если проставить или снять галочки в квадратиках рядом с наименованием пакета, после чего щелкнуть по кнопке «Применить».
Упраление репозиториями
Кроме тех возможностей утилиты Pirut, которые уже описаны выше, имеется еще возможность настройки репозиториев. Для доступа к этой опции выберите пункт «Правка-Репозитории» в главном меню программы. Вы увидите следующее окно:
Рис. 15.
Учитывая, что управление репозиториями было детально рассмотренов в первой части статьи, полагаю, что дополнительных пояснений по работе в этом окне не требуется.
Утилиты yum , pirut и pup обеспечивают возможность поддержания вашей системы на основе дистрибутива Fedora в актуальном состоянии, так что вы всегда будете использовать самые последние версии выбранного вами набора программ. Другие методы обновления программного обеспечения вряд ли способны гарантировать вам такую возможность.
Дополнительные замечания
Помимо «Установка/удаление программ» (pirut) существуют еще альтернативные GUI с расширенными возможностями KYum и Yumex. Кто-то находит их более удобными. Устанавливаются командами «yum install kyum» и «yum install yumex» соответственно.
В 9-ую версию Fedora включена новая утилита PackageKit, которая призвана обеспечить взаимодействие как с Yum, так и с другими популярными менеджерами пакетов Apt и Conary. PackageKit не устанавливается по умолчанию, вилимо разработчики пока не считаю ее безусловной заменой утилите Pirut.
Поскольку я не имел опыта работы с KYum, Yumex и PackageKit, их описание здесь не приводится. Впрочем, за мной остается право дополнить настоящую заметку в будущем, после приобретения соответствующего опыта.
Источники и ссылки, использованные при подготовке настоящей статьи, были перечислены в конце первой части настоящего HOWTO
Источник: rus-linux.net