Dnfdragora fedora linux как использовать
Перейти к содержимому

Dnfdragora fedora linux как использовать

  • автор:

Обзор интерфейса менеджера пакетов Dnfdragora

Обзор интерфейса менеджера пакетов Dnfdragora

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

Обзор интерфейса менеджера пакетов Dnfdragora

Наконец-то для менеджера пакетов DNF появилось полнофункциональное приложение в стиле Synaptic

На сей раз мы наткнулись на Dnfdragora, несложное приложение с почти непроизносимым названием. Это — GUI для DNF, современной замены Yum, который, в свою очередь, долгие годы был краеугольным камнем Fedora, Red Hat Enterprise Linux и ряда его производных. И работает он так же эффективно, как, скажем, рекламная кампания Google Ads, настроенная опытным специалистом (подробности на https://direct-settings.ru/zakaz-google.html).

DNF основан на библиотеках Libsolv и Hawkey libraries, а также ряде модулей Python 3. В повседневном использовании это означает более быстрое разрешение зависимостей и большую стабильную скорость в целом.

Обзор интерфейса менеджера пакетов Dnfdragora

Однако не так давно DNF был портирован в Mageia Linux, потомок Mandriva, который продолжил использовать его внутренний менеджер пакетов URPM. Включение DNF стало для Mageia большим шагом вперед, и хорошие новости на этом не закончились. Сообщество Mageia создало Dnfdragora, замечательный графический интерфейс для DNF. Даже хотя сам DNF относительно прост в использовании из командной строки, теперь он стал еще проще и еще более дружелюбным.

Визуально Dnfdragora вдохновлялся интерфейсом оригинального Rpmdrake, который хорошо известен всем, кто когда-либо использовал Mageia, OpenMandriva или Rosa. Те, кто незнаком с этими дистрибутивами, могут распознать элементы из таких приложений, как Synaptic. Dnfdragora позволяет искать пакеты,отмечать несколько элементов для установки, просматривать дерево категорий пакетов и фильтровать списки пакетов по разным критериям.

Обзор интерфейса менеджера пакетов Dnfdragora

Программа основана на libYui, библиотеке абстракции виджетов, написанной в SUSE. Это означает, что ее можно запускать с интерфейсами на Qt5, GTK+ 3 или ncurses, и она легко компилируется в любом дистрибутиве Linux, который уже использует DNF.

  • Просмотров: 5188
  • Комментариев: 0
  • Дата публикации: 29.04.19

Установка ПО в Linux

Программное обеспечение дистрибутива Fedora находится в хранилище – репозитории. ПО в репозитории хранится в виде отдельных зависимых пакетов имеющих собственную версию и версию дистрибутива в котором они могут быть установлены с разрешением зависимости. Различные дистрибутивы Linux обладают собственным хранилищем пакетов программного обеспечения. Помимо основного репозитория, на различных серверах по всему миру хранятся “зеркала”, т. е. копии содержания основного репозитория и пакеты обновления. Каждый пакет используется для определенной версии дистрибутива, а хранилище гарантирует совместимость всех зависимых пакетов. Что такое пакет? Пакет – это архив, в котором содержаться необходимые для работы программы компоненты: бинарные файлы программ, библиотеки и прочий контент необходимый для работы программы. Зачастую пакет программы связан с компонентами пакетов других программ. Такое состояние называется зависимостью пакетов друг от друга. Причины зависимости заключаются в том, что разработчики ПО используют/заимствуют программный код или уже имеющиеся библиотечные файлы в других разработках. Это облегчает создание приложений, избавляет разработчиков от написания повторяющихся алгоритмов и позволяет писать программы взаимодействующие в единой среде. При попытке установить пакет (используя консоль), в большинстве случаев, будет выдана информация о наличии неудовлетворенных зависимостей. (Однако, некоторые пакеты могут быть всё же установлены, если в системе все необходимые зависимости будут разрешены.)
Для работы с пакетами дистрибутив Fedora использует консольный менеджер пакетов (back-end) – RPM (рекурсивный акроним RPM Package Manager). RPM имеет недостаток – он не может разрешать зависимость в автоматическом режиме. Его цель обрабатывать пакет/пакеты (удалять, обновлять, устанавливать, проверять зависимости, предоставлять сведения о пакете и его содержимом) и обслуживать базу данных установленных в системе пакетов. Для установки программы необходимо собрать все зависимые пакеты (предварительно узнать какие из них уже установлены, а какие – нет) и только тогда программа может быть установлена вместе с зависимыми пакетами. Узнать какие зависимости имеет данный пакет можно с помощью команды:

rpm -qpR name_package

где name_package – имя пакета.
Разумеется, такая работа с пакетами совершенно неудобна и утомительна. Чтобы автоматизировать процесс установки пакетов в дистрибутиве имеется надстройки пакетных менеджеров (front-end), которые способны производить установку пакетов и призваны решать следующие основные задачи:

  • поиск пакетов в репозиториях;
  • установка пакетов из репозиториев с удовлетворением зависимостей;
  • обновление системы;
  • удаление ненужных пакетов.

Такой надстройкой в Fedora является DNF (Dandified YUM). Разберем более подробно как и с помощью каких программных средств работать с RPM и DNF.

Работа с RPM и DNF в консоли

RPM и DNF являются консольными программами. Для работы с менеджерами пакетов запустите программу Konsole (эмулятор терминала среды KDE).

RPM

Для получения полной справки введите команду:

$ rpm --help

Установка пакетов производится в режиме суперпользователя (root). Если ваш аккаунт имеет администраторские полномочия, то воспользуйтесь утилитой sudo :

$ sudo -i [sudo] пароль для username: (ввод пароля пользователя)

Если таких полномочий нет, то стандартной командой su :

$ su Пароль: (ввод пароля суперпользователя)

Формат команд RPM:

rpm [ПАРАМЕТРЫ] [ПУТЬ К ФАЙЛУ].rpm

Некоторые наиболее часто используемые параметры команды rpm :

-h, --hash выводить "#" по мере установки пакета -i, --install установить пакет(ы) -U, --upgrade обновить пакет(ы) -v, --verbose выводить более детальные сообщения -e, --erase удалить (деинсталлировать) пакет(ы) --force игнорировать конфликты пакетов

Параметры (иначе, ключи) можно использовать сгруппировав, например, так:

# rpm -ihv name_package

Следующей командой будут установлены все RPM-пакеты в текущей директории:

# rpm -ihv *.rpm

Приведем пример работы с rpm по установке программ, которые не входят в дистрибутив. Большинство таких программ поставляются в виде исходников, которые необходимо скомпилировать. Это сложная задача для рядового пользователя. Но множество разработчиков собирают бинарные файлы своих программ в виде rpm-пакетов. Одна из таких программ – это Edraw Max.

Edraw Max – это универсальное ПО для создания диаграмм более чем 280 типов, таких как бизнес-презентации, планы зданий, интеллектуальные карты, научные иллюстрации, диаграммы UML, каркасы, электрические диаграммы и мн. др.

Перейдите на сайт программы: https://www.edrawsoft.com/download-edrawmax.html . Загрузите rpm-пакет программы и перейдите в директорию загрузки (это условно-бесплатная программа с ограниченным периодом бесплатного использования без лицензии):

# cd /home/user_name/Загрузки/

Выполните команду установки пакета:

# rpm -ihv edrawmax_10.0_x86_64.rpm

Результат и степень выполнения будет отображаться ниже:

Verifying. ################################# [100%] Подготовка. ################################# [100%] Обновление / установка. 1:edrawmax-10-0 ################################# [100%]

Программа установлена! Войдите в меню и найдите программу в разделе Office > EdrawMax .
Скачивание программы можно поручить самому rpm. Ниже показан пример скачивания и установки по сети среды разработки IDE CodeLite (убедитесь, что эти URL действительны на странице https://downloads.codelite.org/):

# rpm --import https://repos.codelite.org/CodeLite.asc # rpm -Uvh https://repos.codelite.org/rpms-14.0/fedora/codelite-14.0-2.fc32.x86_64.rpm Загружается https://repos.codelite.org/rpms-14.0/fedora/codelite-14.0-2.fc32.x86_64.rpm Verifying. ################################# [100%] Подготовка. ################################# [100%] Обновление / установка. 1:codelite-14.0-2.fc32 ################################# [100%]

В данных примерах разрешения зависимостей не потребовалось.

Список всех пакетов установленных в системе и их размеры можно получить с помощью следующей команды:

rpm -qa --queryformat '%010\t%-%-%\n'
DNF

Для получения полной справки введите команду:

# dnf --help

Использование команды:

dnf [ПАРАМЕТРЫ] [КОМАНДА]

Некоторые наиболее часто используемые команды:

autoremove удалить все ненужные пакеты, первоначально установленные по зависимостям check поиск проблем в packagedb check-update проверить доступные обновления для пакетов clean удалить кэшированные данные deplist Показывать список зависимостей пакета и какие пакеты их предоставляют distro-sync обновить установленные пакеты до последних имеющихся версий downgrade Откат к предыдущей версии пакета group показать или использовать информацию о группах history отобразить (или использовать) историю транзакций info отобразить информацию о пакете или группе пакетов install установка пакета(ов) в систему list вывести список пакетов или групп пакетов reinstall переустановка пакета remove удалить пакет или пакеты из системы repolist отобразить настроенные репозитории ПО repoquery поиск пакетов по ключевому слову search поиск информации о пакете по заданной строке updateinfo показать рекомендации к пакетам upgrade обновить пакет или пакеты в системе upgrade-minimal обновление, но только «новейших» пакетов, которые исправляют проблему в вашей системе
# dnf install krusader

Обратите внимание на то, что после команды указывается имя пакета, а не файла!

Замечательной особенностью DNF является установка не отдельных пакетов, а целой группы пакетов специального назначения всего одной командой! Такая необходимость возникает, например, после установки дистрибутива. Для того, чтобы увидеть список доступных для установки групп, необходимо ввести следующую команду:

# dnf group list

Вывод в Fedora 32

Последняя проверка окончания срока действия метаданных: 2:08:18 назад, Вс 16 авг 2020 19:34:25. Доступные группы рабочих сред: Настраиваемая операционная система Fedora Минимальная установка Серверная редакция Fedora Fedora Workstation Fedora Cloud Server KDE Plasma Workspaces Рабочая среда Xfce Рабочая среда LXDE Рабочий стол LXQt Рабочая среда Cinnamon Рабочая среда MATE Графическое окружение Sugar Deepin Desktop Рабочая станция для разработки и творчества Веб-сервер Сервер инфраструктуры Базовая среда рабочего стола Установленные группы: Средства разработки на C и библиотеки Средства разработки Научные и инженерные KDE Шрифты Поддержка оборудования Доступные группы: 3D Печать Средства администрирования Звукопроизводство Подготовка публикаций Книги и руководства Инфраструктура для облаков Средства управления облачными средами Compiz Управление контейнерами Инструментарий разработки и библиотеки для D Комплект программ дизайнера Членство в домене Fedora Eclipse Редакторы Развивающие программы Электронная лаборатория Сервер FreeIPA Управление без монитора LibreOffice Приложения MATE Медицинские приложения Milkymist Сетевые серверы Neuron Modelling Simulators Офисные приложения Python Classroom Python Science Разработка робототехники Инструменты для разработки RPM Лаборатория безопасности Текстовые средства Интернет Оконные менеджеры Deepin Desktop Environment GNOME Графические программы для работы с Интернет Игры и развлечения Звук и видео Системные средства

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

# dnf group [Параметры] [КОММАНДА] [АРГУМЕНТЫ]

DNF поддерживает следующие команды для работы с группами:

Некоторые параметры dnf (полный список смотрите в справке к программе):

-v, --verbose подробно описывать действия --version show DNF version and exit --nodocs не устанавливать документацию --skip-broken разрешить проблемы зависимостей, пропустив пакеты -h, --help показать справку по команде --allowerasing разрешить удаление установленных пакетов для разрешения зависимостей -b, --best попытаться использовать наиболее подходящие версии пакетов в транзакциях. -y, --assumeyes автоматически отвечать утвердительно на все вопросы --noautoremove запретить удаление зависимостей, которые больше не используются --nogpgcheck отключить проверку подписи gpg (если позволяет политика RPM) --color COLOR использовать ли цветовые схемы
Фронтэнд dnfdragora

dnfdragora – фронтэнд DNF, который работает с использованием GTK, ncurses и QT и является основным менеджером пакетов в дистрибутиве Fedora (устанавливается по умолчанию). Запуск приложения осуществляется через меню: Администрирование > dnfdragora.

Внешний вид окна программы

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

Совет. Если по каким-либо причинам приложение стало закрываться аварийно, то попробуйте удалить файл конфигурации ~/.config/dnfdragora.yaml и перезапустить приложение.

Помимо установки отдельных пакетов, приложение может обновлять пакетную базу и работать с группами пакетов. Чтобы установить программу необходимо определить критерии поиска и выбрать с помощью чекбокса пакеты в предложенном списке.
Не взирая на то, что в KDE существует свой “родной” установщик программ Discover , обращаться к dnfdragora, возможно, вы будете довольно часто. Дело в том, что в Discover невозможно (во всяком случае, пока) полноценно работать с пакетной базой репозитория, так как от непосвященного пользователя скрыты некоторые пакеты, (например, пакеты со слабыми зависимостями: дополнения, локализации, плагины), а без точного знания наименования пакета найти его в пакетной базе будет весьма проблематично. Для сравнения, покажем окна dnfdragora и Discover с результатами поиска по ключевому слову “libreoffice”:

dnfdragora

Не трудно заметить, что Discover, помимо пакетов libreoffice, показывает пакеты, которые к LibreOffice совершенно не относятся! Надеемся, что разработчики программы доработают этот недостаток в ближайшее время, а пока – dnfdragora вам в помощь :-).

Центр программ KDE Discover

Штатным установщиком программ в KDE является – Discover. Помимо недостатка упомянутого выше, программа имеет и “плюсы”. Так Discover может устанавливать и обновлять не только пакеты, но и расширения как к программам, так и к Plasma (правда, не всегда эти обновления бывают успешними). Да и внешний вид программы более дружелюбен. По каждой программе, например, даны подробные сведения, а к программам из мира KDE прилагаются и скриншоты окон этих программ. Пример установки программы digiKam :

Установка программы

Сведения о программе

Утилита alien

Что делать, если необходимо установить в Fedora пакет .deb (конкурирующего менеджера из мира Debian), которого нет в дистрибутиве? Или наоборот: как в Debian установить rpm-пакет? На помощь приходит утилита alien. alien способна преобразовывать пакет одного формата в другой, например rpm deb . Утилита работает не только с пакетами rpm и ded, но мы ограничимся только этими форматами. Рассмотрим практический пример. На сайте программы XMind разработчики выложили для скачивания только deb-пакет.

Новая версия этой замечательной программы (используемой, кстати, в нашем курсе) распространяется теперь, в том числе, и в виде rpm-пакета, скачать который можно по этой ссылке: https://www.xmind.net/download/xmind

Нам не остается ничего другого, как установить в Fedora пакет, сконвертированный из deb-пакета. Скачиваем файл пакета (~84Мб). Далее, переходим в директорию загрузки и в консоли выполняем последовательно следующие команды:

# dnf install alien # alien -r ./xmind-linux-3.4.1.201401221918_i386.deb # rpm -i xmind-3.4.1-2.i386.rpm

Первая команда установит пакет alien в Fedora Linux.
Вторая команда, собственно, запустит процесс преобразования deb -> rpm . В результате пакет xmind-linux-3.4.1.201401221918_i386.deb будет преобразован в пакет xmind-3.4.1-2.i386.rpm.
Третья команда инсталлирует новый пакет в системе Fedora.
Некоторые параметры команд:

-d, --to-deb Generate a Debian deb package (default). -r, --to-rpm Generate a Red Hat rpm package. -i, --install Install generated package. -k, --keep-version Do not change version of generated package. --bump=number Increment package version by this number. -h, --help Display this help message.
DeltaRPM

Наше повествование будет неполным, если мы не упомянем технологию Delta, поскольку пакеты delta-rpm идут в обновлениях. По существу, Delta – это патч, внесение изменений в существующий пакет. Поскольку сумма изменений меньше (а в некоторых случаях даже значительно меньше) объема оригинального пакета – происходит существенная экономия трафика и увеличивается скорость обновления системы. При обновлении пакетов вначале определяется база Delta, затем не имеющих Delta и их зависимости, создается общий сценарий установки, руководимый пакетным менеджером. Delta-пакеты используются исключительно для обновления системы и не распространяются с дистрибутивом. Дистрибуция содержит только оригинальные пакеты. В репозитории дистрибутива они содержатся папке обновления.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Настройка Fedora 31 после установки

Обновлено 20.04.2020: Обновлена инструкция по установке новой версии Vmware Workstation в Fedora. Поддерживается установка последней версии Vmware Workstation 15.5.2.

В Fedora используется менеджер пакетов DNF и формат пакетов RPM. Система предоставляет новейшие версии пакетов и ядра Linux. Поддержка дистрибутива осуществляется около 13 месяцев, а модуль ядра SELinux привносит высокий уровень безопаности.

Основным дистрибутивом Fedora является система с рабочим окружением Gnome, но также доступны альтернативные сборки Fedora Spins, которые предлагают окружения KDE, Cinnamon, XFCE, LXQT, LXDE и Mate.

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

Обновление системы и улучшение поддержки локализации

В первую очередь, после установки, нужно обновить систему, поэтому в терминале выполним следующую команду:

sudo dnf update -y

После обновления стоит перезагрузить систему.

Русифицируем систему. Русский язык установлен не полностью, поэтому воспользуемся командой для доустановки языка:

sudo dnf install langpacks-ru

Если есть необходимость, то можно поменять имя хоста и пароль пользователя:

hostnamectl status #просмотр текущего имени хоста hostnamectl set-hostname --static "имя хоста" # изменение имени хоста. "имя хоста" - добавляем свое название хоста sudo passwd имя_пользователя #сначала указываем установленный пароль, затем новый

Переключение с Wayland на Xorg

Fedora с рабочим окружением Gnome по умолчанию использует Wayland (протокол управления графическим сервером). На мой взгляд Wayland еще недостаточно стабилен, поэтому рекомендую использовать Xorg. Для смены протокола: в окне выбора пользователя входа в систему нажмите на шестерёнку выберите протокол Gnome на Xorg.

Подключение репозиториев RPM Fusion free и nonfree

Из-за юридических ограничений компания Red Hat (Fedora) не могут содержать в своих репозиториях некоторые, ограниченные патентами, пакеты. Как правило это мультимидийные пакеты, проприетарные драйвера. По этой причине был создан отдельный репозиторий с данными пакетами. RPM Fusion является одним из самых популярных репозиториев в Fedora. Добавление репозитория одной командой:

sudo dnf install https://download1.rpmfusion.org/-release-$(rpm -E %fedora).noarch.rpm

Установка мультимедийных кодеков

Из-за отсутствия проприетарных кодеков, браузер Firefox в Fedora не воспроизводит потоковое вещания и видео кодека html5.

Решим проблему установкой кодеков:

sudo dnf groupupdate multimedia sound-and-video

Решение проблемы браузера Opera в дистрибутиве Fedora с воспроизведением потокового вещания и видео html5

Браузер Opera в Fedora имеет туже самую проблему, что и в Ubuntu подобных дистрибутивах. Решение проблемы с воспроизведением видео:

sudo dnf install chromium-libs-media-freeworld
sudo rm /usr/lib64/opera/libffmpeg.so
sudo ln -s /usr/lib64/chromium-browser/libffmpeg.so /usr/lib64/opera/

Установка дополнительной поддержки архиваторов

sudo dnf install unzip p7zip unrar cabextract

Установка rar в Fedora 31:

wget https://forensics.cert.org/fedora/cert/30/x86_64//rar-5.4.0-1.fc30.x86_64.rpm
sudo dnf localinstall rar-5.4.0-1.fc30.x86_64.rpm
rm -rf rar-5.4.0-1.fc30.x86_64.rpm

После этого в Менеджере архивов (проверено в Gnome и KDE) появится поддержка создания rar архивов.

Установка шрифтов Microsoft

sudo dnf install curl cabextract xorg-x11-font-utils fontconfig
sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

Улучшение отображения шрифтов при использовании LCD мониторов

sudo ln -s /usr/share/fontconfig/conf.avail/11-lcdfilter-default.conf /etc/fonts/conf.d/

Установка Dnfdragora в Fedora 31

Dnfdragora это интерфейс менеджера пакетов DNF, основанный на rpmdragora из Perl-кода Mageia. Dnfdragora можно назвать альтернативой Synaptic из Debian, Ubuntu подобных систем.

sudo dnf install dnfdragora

Установка Steam

Steam установим из репозитория RPMFusion, чуть раньше мы уже подключили данный репозиторий. Пакет kernel-modules-extra необходим для обеспечения поддержки игровых контроллеров.

sudo dnf -y install steam kernel-modules-extra

Устанавливаем wine

sudo dnf install wine

Установка winetricks и создание префикса — аналогично нашей статьи: Установка последней версии WineHQ.

Удаляем лишние программы

Fedora Spin с рабочим окружением KDE поставляется с большим количеством различных программ. По моему мнению, далеко не все они нужны. Предлагаю удалить лишние программы:

sudo dnf remove -y krdc kmail kgpg kmouth krusader kruler calligra-core k3b krfb falkon ktorrent kget akregator konqueror konversation kontact kpat kmahjongg kmines dragon korganizer kaddressbook

Удаление лишних пакетов снизит потребление оперативной памяти системы. В моем случае потребление памяти после установки системы было около 800 МБ. После удаления пакетов снизилось до 600 МБ.

Так же сообществом создан скрипт, и описана настройках по установке минимальной комплектации KDE из установочного образа Fedora Everything. Ссылка: Fedora-KDE-Minimal-Install-Guide.

Настройка окружения

Для использования самой последней версии KDE можно установить репозиторий mkyral/plasma-unstable. Несмотря на то, что сообщается о возможной нестабильности работы KDE из данного репозитория, в сообществе Fedora множество сообщений о корректности и стабильности.

Вместо удаленного ktorrent установим qbittorrent:

sudo dnf install qbittorrent

Для регулировки работы процессора установим виджет CPUFreq Manager Widget:

git clone https://github.com/jsalatas/plasma-pstate cd plasma-pstate sudo ./install.sh

После этого виджет появится в общем списке виджетов.

Обладатели ноутбуков, при использовании рабочего окружения KDE, возможно захотят отказаться от ввода пароля WI-FI после каждого запуска системы. Для отключения данной проверки нужно запустить приложение KWalletManager, с правой стороны выбрать опцию Сменить пароль, затем указать пустой пароль и согласится на изменений.

Настройка окружения Gnome дистрибутива Fedora во многом схожа с настройкой Gnome из Ubuntu. Поэтому стоит воспользоваться информацией из статьи: Ubuntu 18.04 LTS Bionic Beaver после установки

Проблема с отображением кириллицы в редакторе Gedit все так же решается командой:

Gnome Tweak Tool устанавливается командой:

sudo dnf install gnome-tweak-tool

Пакет chrome-gnome-shell предустановлен, поэтому достаточно будет установить расширение для каждого браузера: Opera, Chrome, Firefox и перейти на на сайт https://extensions.gnome.org/ для установки дополнений. Рекомендую обратить внимание на такие дополнения как Dash to Dock, Tray Icons.

Установка Viber

В версии Viber для Linux встречаются проблемы с зависимостями при установке. Поэтому было решено сразу же ставить из пакетов Flatpack и Snap. Версия из Snap у меня не запустилась, а вот из Flatpack запустилась и работала корректно. По этой причине опишу установку Viber именно версии из Flatpack.

Установка и включение Flatpack в Fedora:

sudo dnf install flatpak
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
wget https://sdk.gnome.org/keys/gnome-sdk.gpg
sudo flatpak remote-add --gpg-import=gnome-sdk.gpg --if-not-exists gnome-apps https://sdk.gnome.org/repo-apps/

Установка пакета Viber:

sudo flatpak install flathub viber

После перезагрузки системы программа будет отображена и доступна в Меню приложений

sudo flatpak uninstall viber

Установка Skype

sudo curl -o /etc/yum.repos.d/skype-stable.repo https://repo.skype.com/rpm/stable/skype-stable.repo
sudo dnf install skypeforlinux

Установка Virtualbox в Fedora 31

Установка Virtualbox будет производиться из репозитория RPM Fusion

sudo dnf upgrade --refresh
sudo dnf install gcc kernel-devel kernel-headers akmod-VirtualBox VirtualBox

Добавляем пользователя в группу vboxusers и vboxsf

sudo usermod -a -G vboxusers $(whoami)
sudo usermod -a -G vboxsf $(whoami)

Установка Vmware Workstation 15.5.1 в Fedora

Для установки VMware Workstation Pro необходимо открыть терминал в папке с установочным файлов расширения .bundle и выполнить следующие команды:

chmod +x название.bundle
sudo ./название.bundle

Во время запуска Vmware появится окно с предложением компиляции ядра, оно завершится с ошибкой и выполнено не будет. Для решения этой проблемы нужно установить патчи.
Устанавливаем патчи:

sudo dnf install kernel-devel
wget https://github.com/mkubecek/vmware-host-modules/archive/workstation-15.5.2.zip
unzip workstation-15.5.2.zip
cd vmware-host-modules-workstation-15.5.2
tar -cf vmmon.tar vmmon-only
tar -cf vmnet.tar vmnet-only
sudo cp -v vmmon.tar vmnet.tar /usr/lib/vmware/modules/source/
sudo vmware-modconfig --console --install-all

В следующем запуске Vmware Workstation снова откроется окно с предложением компиляции ядра, соглашаемся. Теперь оно пройдет корректно.

После установки виртуальной системы можно столкнуться с ошибкой скачивания Vmware Tools. Решение следующее:

sudo dnf install ncurses-compat-libs
sudo ln -s /usr/lib64/libncursesw.so.6 /usr/lib64/libncursesw.so.5

В настройках Vmware в опции CD/DVD указываем образ (для установки Windows это будет образ windows.iso, а для Linux — linux.iso) из директории /usr/lib/vmware/isoimages/

После этого в файловом менеджере примонтируется образ Vmware Tools и можно будет установить дополнение.

Установка Vmware Workstation и установка патчей подойдет для любого GNU/Linux дистрибутива. Для Ubuntu и подобных дистрибутивов может потребоваться установка пакета linux-headers:

sudo apt install linux-headers-$(uname -r)

Установка WPS Office

Для WPS OFFICE в Fedora требуется пакет mesa-libGLU. Перед установкой офисного пакета рекомендую сначала проверить наличие пакета mesa-libGLU:

rpm -qa | grep mesa-libGLU

Если пакет отобразится, то переходим к установке. Если пакет не установлен, то установим его следующей командой:

sudo dnf install mesa-libGLU

Для того чтобы воспользоваться скриптом установки WPS OFFICE достаточно сначала выполнить первую команду, а остальные, начиная с #!/bin/bash скопировать одной командой и вставить в терминал.

sudo -i
#!/bin/bash
echo "Installing wps office 64"
sudo dnf install git -y
wget http://kdl.cc.ksosoft.com/wps-community/download/8865/wps-office-11.1.0.8865-1.x86_64.rpm
sudo rpm -i wps-office*.rpm
sudo rm wps-office*.rpm
cd /tmp
wget https://dl.comss.ru/download/wps_f.zip
unzip wps_f.zip
sudo cp -r mui/ru_RU /opt/kingsoft/wps-office/office6/mui/
sudo cp -r dicts/ru_RU /opt/kingsoft/wps-office/office6/dicts/
sudo cp -r dicts/ru_RU /opt/kingsoft/wps-office/office6/dicts/spellcheck/
sudo rm wps_f.zip
cd /tmp
git clone https://github.com/iamdh4/ttf-wps-fonts.git
cd ttf-wps-fonts
sudo bash install.sh
rm -rf /tmp/ttf-wps-fonts

Удаляем предустановленный LibreOffice

sudo dnf remove libreoffice*

Полезная информация о множестве различных аспектов настроек дистрибутива Fedora. Например, о поддержке оборудования, установке и обновлению драйверов и многое другое. Информация по ссылке: Неофициальный FAQ по Fedora

Выводы

Операционная система Fedora Workstation 31 продолжает радовать как стабильной работой, так и качественными изменениями. Если вам не нравится рабочее окружение Gnome, то рекомендую обратить внимание на Fedora Spin с другими рабочими окружениями. Fedora – это тот Linux-дистрибутив, который обязательно стоит попробовать. Потратив немного времени на его настройку, я уверен, вы останетесь довольны его дальнейшей стабильной работой.

Пакетный менеджер и установка пакетов¶

Какой менеджер пакетов используется в настоящее время?¶

Dnf, являющийся, в свою очередь, форком Yum.

Могу ли я использовать Yum в Fedora?¶

Начиная с Fedora 24, yum присутствует в Fedora лишь как символическая ссылка на dnf, сохранённая для обратной совместимости.

Что такое Flatpak пакеты?¶

Flatpak – это современный прогрессивный формат самодостаточных пакетов для GNU/Linux. Он поддерживает рантаймы, изоляцию внутри песочниц, установку без наличия прав суперпользователя и многое другое.

Какие преимущества и недостатки у Flatpak пакетов?¶

  • поддерживает динамическую линковку с большим количеством библиотек из рантаймов, что решает проблемы с лицензированием, их поддержкой в актуальном состоянии и исправлением в них ошибок, а также уязвимостей;
  • библиотеки, для которых нет рантаймов, могут быть упакованы непосредственно внутрь флатпака и подгружаться по мере необходимости;
  • Flatpak позволяет установить разные версии приложений одновременно;
  • для установки не требуются права суперпользователя;
  • поддерживается контейнерная изоляция приложения внутри собственной песочницы;
  • приложению могут быть выданы только необходимые права доступа и разрешения;
  • могут использоваться на любом дистрибутиве GNU/Linux без перекомпиляции и перекомпоновки;
  • лёгкое создание и хостинг собственных репозиториев.
  • из-за того, что Flatpak пакеты по определению должны запускаться на разных дистрибутивах, они содержат в себе все зависимости либо в виде рантаймов, либо внутри флатпака;
  • в публичных репозиториях (например Flathub) мейнтейнеры не занимаются обновлением своих пакетов до актуальных рантаймов, из-за чего уже при установке нескольких приложений в системе появится куча различных версий одних и тех же рантаймов, что тратит очень много места на диске впустую;
  • из-за использования разных рантаймов полноценно не используется разделяемая память библиотек, т.е. каждое приложение загружает все свои зависимости в собственное адресное пространство;
  • отсутствует возможность использования общесистемных настроек среды для контейнеризированных приложений;
  • отсутствует возможность использования уже установленных в системе библиотек.

Можно ли устанавливать программы посредством make install?¶

Категорически не рекомендуется, ибо:

  1. make install порождает в системе кучу никем и ничем не отслеживаемых файлов: бинарников, конфигов, прочих файлов. Это в большинстве случаев приведёт к множеству проблем при обновлении или удалении;
  2. make install не учитывает файлы других пакетов и может запросто перезаписать или удалить в системе что-то важное, т.к. действие выполняется с правами суперпользователя;
  3. make install не ведёт никакого журнала действий, поэтому всё, что оно произвело, невозможно полноценно откатить;
  4. установленные через make install приложения очень часто невозможно удалить вообще, т.к. многие разработчики не делают правило make uninstall, что, в принципе, верно ибо оно не нужно большинству, а если и делают, то оно способно лишь удалить скопированные файлы. Изменения конфигов, других файлов и пр. откатить оно не способно.

Установка пакетов штатным пакетным менеджеров имеет множество преимуществ:

  1. при установке пакетный менеджер разрешает все зависимости, добавляет нужные, устраняет конфликты;
  2. перед выполнением установки пакетный менеджер проверяет, чтобы устанавливаемый пакет не вмешивался в работу других, а также самой системы. Если это так, он не будет установлен;
  3. во время установки все изменения, сделанные пакетом, вносятся в специальную базу данных пакетного менеджера и при удалении или обновлении будут учтены;
  4. при удалении пакета производится полный откат действий, предпринятых при установке (даже если были изменены какие-то конфиги, эти действия будут откачены полностью, т.к. хранится diff внутри базы ПМ);
  5. при обновлении перезаписываются только изменённые файлы. Более того, может быть скачан и установлен только дифф. изменений;
  6. если при обновлении пакета возникает конфликт какого-то конфига, он не будет молча перезаписан, а будет применён патч на существующий, либо, если это невозможно, будет запрошено действие у пользователя.

Можно ли использовать PIP или NPM для установки программ и модулей?¶

Нет. Глобальная установка чего-либо через pip (pip2, pip3) либо npm по своей деструктивности аналогична make install .

Нужной Python библиотеки нет в репозиториях. Как можно безопасно использовать PIP?¶

В таком случае рекомендуется либо локальная установка модулей посредством pip с параметром —user , либо использование Python Virtual Environment :

pip3 --user install foo-bar

Установленные таким способом модули будут размещены в домашнем каталоге пользователя и не помешают работе системы.

Как правильно применять Python Virtual Environment?¶

Установим пакеты python3-virtualenv и python3-setuptools:

sudo dnf install python3-setuptools python3-virtualenv

Создадим виртуальное окружение:

python3 -m venv foo-bar
source foo-bar/bin/activate

Теперь внутри него допускается использовать любые механизмы установки пакетов Python: pip, install.py и т.д.

Здесь foo-bar – название venv контейнера. Допускается создавать неограниченное их количество.

Как удалить установленные пакеты из Python Virtual Environment?¶

source foo-bar/bin/activate

Создадим и экспортируем в файл foo-bar-installed.txt список установленных пакетов из PIP:

pip3 freeze > foo-bar-installed.txt

Удалим данные пакеты:

pip3 uninstall -y -r foo-bar-installed.txt rm -f foo-bar-installed.txt

Как правильно обновлять систему?¶

Fedora поддерживает два вида обновлений: через консоль средствами пакетного менеджера dnf , либо через графические менеджеры, основанные на PackageKit.

Обновление системы средствами dnf:

sudo dnf upgrade --refresh

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

Как часто следует устанавливать обновления системы?¶

Чем чаще устанавливаются обновления, тем меньше проблем будет при этом за счёт плавной миграции между файлами конфигурации приложений, сервисов и т.д.

Мы рекомендуем устанавливать обновления системы ежедневно.

Можно ли автоматизировать установку критических обновлений?¶

Да. Установим специальный сервис для автоматической проверки и установки обновлений:

sudo dnf install dnf-automatic
sudo systemctl enable dnf-automatic.timer

Все параметры могут быть тонко настроены в конфигурационном файле /etc/dnf/automatic.conf .

Как мне обновить Fedora до новой версии?¶

Процесс обновления стандартен и максимально безопасен:

sudo dnf upgrade --refresh sudo dnf install dnf-plugin-system-upgrade sudo dnf system-upgrade download --releasever=$(($(rpm -E %fedora) + 1)) sudo dnf system-upgrade reboot

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

Если произошёл какой-то конфликт, то рекомендуется очистить все кэши dnf:

sudo dnf clean all

Возможно ли сделать откат к предыдущей версии Fedora?¶

Нет, это действие официально не поддерживается.

Для отката на предыдущую версию необходимо восстановить созданную ранее резервную копию.

Как мне обновить Fedora до Rawhide?¶

Допускается обновление с любой поддерживаемой версии Fedora до Rawhide. Следует помнить, что это действие необратимо. Пути назад на стабильный выпуск без полной переустановки системы уже не будет.

sudo dnf upgrade --refresh sudo dnf install dnf-plugin-system-upgrade sudo dnf system-upgrade download --releasever=rawhide sudo dnf system-upgrade reboot

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

Возможно ли откатиться с Rawhide назад на обычный релиз?¶

Можно ли обновляться через несколько версий?¶

Официально поддерживается лишь обновление с текущей на следующую версию. Если требуется выполнить обновление сразу через несколько релизов дистрибутива, то настоятельно рекомендуется делать это последовательно (например F27 -> F28 -> F29 -> F30 и т.д.).

Когда лучше выполнять обновление при выходе новой версии дистрибутива?¶

Рекомендуется обновлять систему до новой версии Fedora в течение месяца после её официального релиза.

При обновлении dnf ругается на дубликаты пакетов.¶

Установим утилиту package-cleanup:

sudo dnf install dnf-utils

Удалим дубликаты и повреждённые пакеты:

sudo package-cleanup --cleandupes

База RPM оказалась повреждена. Как восстановить?¶

Для запуска пересборки базы данных RPM следует выполнить:

sudo rpm --rebuilddb

Настоятельно рекомендуется сделать резервную копию каталога /var/lib/rpm перед этим действием.

Dnf сохраняет старые ядра. Это нормально?¶

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

Как можно уменьшить количество сохраняемых ядер?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной installonly_limit :

installonly_limit=2

Минимально допустимое значение – 2 (будут сохраняться два ядра: текущее и предыдущее).

Как настроить работу dnf через прокси?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной proxy (при отсутствии добавим):

proxy=socks5://localhost:8080

Поддерживаются HTTP, HTTPS и SOCKS.

Если используемый прокси-сервер требует проверки подлинности (аутентификации), то укажем также и авторизационные данные для подключения:

proxy_username=LOGIN proxy_password=PASSWORD

Здесь LOGIN – логин пользователя на прокси-сервере, а PASSWORD – его пароль.

Обычно DNF корректно определяет тип авторизации, используемый прокси-сервером, но иногда (в случае HTTP-прокси) этот механизм работает некорретно. В этом случае достаточно указать ее тип:

proxy_auth_method=METHOD

Здесь METHOD – название метода аутентификации, используемого прокси-сервером.

Список часто используемых методов:

  • basic – базовая HTTP аутентификация, вероятно вы используете именно этот метод;
  • digest – HTTP дайджест-аутентификация;
  • ntlm – NTLM HTTP аутентификация, активно применяется в среде продуктов Microsoft.

Подробнее о поддерживаемых методах аутентификации см. в документации.

Как отключить установку слабых зависимостей?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной install_weak_deps (при отсутствии добавим):

install_weak_deps=0

Как мне запретить установку обновлений для ряда пакетов?¶

Классический способ¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной exclude (при отсутствии добавим):

exclude=kernel* PackageKit*

Здесь вместо примера укажем нужные пакеты, разделяя их пробелом. Допускаются стандартные символы подстановки.

Современный способ¶

Установим плагин versionlock для dnf:

sudo dnf install python3-dnf-plugin-versionlock

Отметим пакеты, версии которых будут закреплены:

sudo dnf versionlock add kernel

Отметим пакеты, которые будут игнорироваться в любых транзакциях:

sudo dnf versionlock exclude PackageKit

Что такое Delta RPM?¶

Технология Delta RPM позволяет сократить расход трафика при регулярной установке обновлений за счёт того, что скачиваться будет не новая версия целиком, а лишь разница между ней и установленной в системе.

К сожалению, на медленных устройствах: HDD, eMMC, SD и т.д., это значительно замедляет процесс установки обновлений , поэтому функцию можно отключить .

Как отключить использование Delta RPM?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной deltarpm (при отсутствии добавим):

deltarpm=0

Как можно вручную удалить старое ядро?¶

Для ручного удаления старого ядра можно выполнить:

sudo dnf remove kernel-6.0.8* kernel-core-6.0.8* kernel-modules-6.0.8* kernel-devel-6.0.8*

Здесь 6.0.8 – это версия удаляемого ядра.

Какие сторонние репозитории лучше всего подключать?¶

Как работать с Flatpak пакетами в Fedora?¶

В системе нет кодеков мультимедиа. Как их установить?¶

Для начала следует подключить репозиторий RPM Fusion , после чего установить кодеки из группы multimedia и sound-and-video:

sudo dnf groupupdate multimedia sound-and-video

Как отключить автообновление кэшей dnf?¶

Что лучше: dkms или akmods?¶

Конечно akmods, т.к. он автоматически собирает и устанавливает полноценные RPM пакеты.

Каким способом можно обновить пакет из тестовых репозиториев?¶

Чтобы установить обновление из Fedora Testing, необходимо временно подключить соответствующий репозиторий:

sudo dnf upgrade --refresh foo-bar* --enablerepo=updates-testing

Репозиторий updates-testing подключается однократно только для данного сеанса работы dnf.

Как получить список файлов установленного пакета?¶

sudo dnf repoquery -l foo-bar

Как узнать в каком пакете находится конкретный файл?¶

Для этого можно воспользоваться плагином dnf repoquery:

sudo dnf repoquery -f */имя_файла

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

sudo dnf provides */имя_бинарника

Можно ли установить несколько версий Java в систему?¶

Да, это возможно. В настоящее время поддерживаются следующие версии Java. Допускается их одновременная установка.

sudo dnf install java-1.8.0-openjdk
sudo dnf install java-11-openjdk
sudo dnf install java-17-openjdk

После установки укажем необходимую версию Java по умолчанию .

Как вывести список пакетов из определённого репозитория?¶

Вывод полного списка пакетов из репозитория (на примере rpmfusion-free):

sudo dnf repo-pkgs rpmfusion-free list

Вывод полного списка установленных пакетов из репозитория (также на примере rpmfusion-free):

sudo dnf repo-pkgs rpmfusion-free list installed

Как вывести список пакетов, установленных не из репозиториев, либо удалённых из них?¶

Выполним в терминале:

sudo dnf list extras

Как очистить журнал транзакций dnf?¶

Для очистки журнала транзакций dnf history , выполним:

sudo rm -f /var/lib/dnf/history.sql*

Как сохранить список установленных пакетов, чтобы легко установить их после переустановки системы?¶

Экспортируем список установленных вручную пакетов:

sudo dnf repoquery --qf "%" --userinstalled > ~/packages.lst

Копируем любым способом получившийся файл ~/packages.lst на другое устройство.

Устанавливаем отсутствующие пакеты:

sudo dnf install $(cat ~/packages.lst)

Можно ли скачать, но не устанавливать пакет из репозитория?¶

Скачивание пакета foo-bar в текущий рабочий каталог:

dnf download foo-bar

Скачивание пакета foo-bar в текущий рабочий каталог вместе со всеми его зависимостями, отсутствующими в системе в настоящий момент:

dnf download --resolve foo-bar

Скачивание пакета foo-bar вместе со всеми зависимостями в указанный каталог:

dnf download --resolve foo-bar --downloaddir ~/mypkg

Для работы плагина dnf-download права суперпользователя не требуются.

Как правильно включать или отключать репозитории?¶

Включить репозиторий постоянно (на примере foo-bar):

sudo dnf config-manager --set-enabled foo-bar

Отключить репозиторий постоянно:

sudo dnf config-manager --set-disabled foo-bar

Временно подключить репозиторий и установить пакет из него:

sudo dnf install --refresh foo-bar --enablerepo=foo-bar

Опциональный параметр —refresh добавляется для принудительного обновления кэшей dnf.

Что такое модульные репозитории?¶

Репозитории Fedora Modular позволяют установить в систему несколько различных версий определённых пакетов. Они включены по умолчанию начиная с Fedora 29. Поддержка модулей объявлена устаревшей с Fedora 33.

Вывод списка доступных модулей:

sudo dnf module list

Установка пакета в виде модуля (на примере nodejs):

sudo dnf module install nodejs:6/default

Более подробную информацию о модулях можно найти здесь.

Мне не нужна поддержка модулей. Как их можно отключить?¶

Отключим все модули:

sudo dnf module reset '*'

Удалим пакет с модульными репозиториями:

sudo dnf remove fedora-repos-modular
sudo dnf distro-sync

Можно ли устанавливать обновления через dnf из графического режима?¶

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

Для установки обновлений посредством dnf рекомендуется два варианта:

  • переключение в консоль фреймбуфера посредством нажатия комбинации Ctrl+Alt+F3 (для возврата в графический режим – Ctrl+Alt+F1), выполнение в ней нового входа в систему и запуск процесса обновления;
  • использование screen сессии. Тогда, в случае падения эмулятора терминала, процесс не будет прерван.

Безопасно ли использовать основанные на PackageKit модули обновления из графического режима?¶

Да, использование Gnome Software, Apper, Discover и других, основанных на PackageKit, для обновления системы из графического режима полностью безопасно, т.к. они сначала скачивают файлы обновлений в свой кэш, а для непосредственной установки уже используют специальный сервис. В случае падения GUI приложения, никаких повреждений не будет.

Как правильно тестировать новые версии пакетов в Fedora?¶

Все обновления сначала попадают в тестовые репозитории , поэтому их сначала нужно установить .

По результатам тестирования следует перейти в Fedora Bodhi, выбрать соответствующее обновление и либо добавить ему карму (работает исправно), либо отнять (возникли какие-то проблемы), а также опционально составить краткий отчёт (особенно если обновление работает не так, как ожидалось).

Также для упрощения работы тестировщиков была создана утилита Fedora Easy Karma, позволяющая работать с Bodhi из командной строки.

Как проще установить определённое обновление из тестового репозитория?¶

Проще всего найти данное обновление в Bodhi , затем выполнить:

sudo dnf upgrade --refresh --enablerepo=updates-testing --advisory=FEDORA-2018-XXXXXXXXX

Здесь FEDORA-2018-XXXXXXXXX – уникальный идентификатор обновления из Bodhi.

Как скачать определённую сборку пакета из Koji?¶

Для начала установим клиент Koji :

sudo dnf install koji

Выведем список всех успешно завершённых сборок пакета kernel за последнюю неделю:

koji list-builds --package=kernel --after=$(($(date +%s) - 604800)) --state=COMPLETE

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

koji download-build kernel-6.0.8-300.fc38.x86_64 --arch=$(uname -m)

Почему некоторые пакеты в Fedora не обновляют до новейших версий?¶

Согласно Fedora updates policy, запрещается обновлять пакеты в пределах стабильного выпуска Fedora до новых мажорных версий кроме тех, для которых было выдано специальное разрешение от FESCo .

Какие пакеты разрешено обновлять до новых версий в пределах стабильного выпуска?¶

В настоящее время определён список пакетов, для которых разрешены обновления до новых версий в пределах стабильного выпуска Fedora:

  • ядро Linux;
  • весь KDE стек (включая Qt);
  • веб-браузеры и почтовые клиенты.

При запуске dnf без прав суперпользователя он заново загружает и обновляет кэши. Это нормально?¶

Да. Если необходимо, чтобы dnf использовал глобальные общесистемные кэши репозиториев, следует применять параметр -C , например:

dnf -C search foo

Как удалить все установленные в системе 32-битные пакеты?¶

Удаление всех 32-битных пакетов из системы:

sudo dnf remove "*.i686"

Как вывести список установленных пакетов, от которых никто не зависит?¶

Установим пакет с плагином dnf-leaves:

sudo dnf install python3-dnf-plugin-leaves

Выведем список установленных пакетов, от которых никто не зависит:

dnf -C leaves

Можно ли создать собственное зеркало репозиториев Fedora?¶

Безопасно ли устанавливать обновления через небезопасные соединения?¶

Да. Все пакеты в репозиториях Fedora подписываются цифровыми подписями GnuPG, которые в обязательном порядке проверяются перед установкой и обновлением.

В случае если пакет был заменён, он не сможет быть установлен, т.к. его ЭЦП не будет соответстствовать подписи репозитория.

Безопасно ли использовать COPR репозитории?¶

Т.к. все пакеты в COPR создаются простыми пользователями, их качество значительно отличается. Есть как хорошие репозитории, так и те, что способны вывести систему из строя.

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

Можно ли использовать в Fedora Snap пакеты?¶

Установим пакет snapd:

sudo dnf install snapd

Для работы некоторых приложений требуется наличие символической ссылки /snap , поэтому создадим её:

sudo ln -s /var/lib/snapd/snap /snap

Установим приложение foo-bar из Snap Store:

sudo snap install foo-bar

Внимание! Вне Ubuntu все Snap-пакеты выполняются без какой-либо изоляции из-за отсутствия поддержки AppArmor. Более подробно об этом можно прочитать в сравнении самодостаточных пакетов .

Безопасно ли устанавливать и удалять пакеты группами?¶

Устанавливать пакеты группами абсолютно безопасно, однако удалять – нет, т.к. это приведёт к удалению всех её членов, что может привести к полной неработоспособности системы из-за удаления важных компонентов, таких как графическое окружение, менеджер входа в систему и т.д.

Вывод списка доступных групп:

sudo dnf grouplist

Как установить группу пакетов?¶

Установка группы Fedora Workstation:

sudo dnf groupinstall 'Fedora Workstation'

Как удалить группу пакетов?¶

Удаление группы Fedora Workstation:

sudo dnf groupremove 'Fedora Workstation'

Настоятельно не рекомендуется удалять группы таким способом.

Как автоматически удалить не нужные более пакеты?¶

Dnf автоматически удаляет зависимости, не нужные более для работы установленных пакетов, однако этот процесс можно инициировать и вручную:

sudo dnf autoremove

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

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

Как отметить пакет в качестве установленного пользователем?¶

Отметим пакет foo-bar в качестве установленного пользователем:

sudo dnf mark install foo-bar

После этого пакет не будет автоматически помечаться в качестве кандидата на удаление .

Как запретить автоматически удалять не нужные более зависимости?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной clean_requirements_on_remove (при отсутствии добавим):

clean_requirements_on_remove=True

Как однократно передать dnf параметр?¶

Для однократной передачи параметра воспользуемся опцией —setopt .

Например в качестве примера удалим пакет foo-bar, сохранив при этом его зависимости :

sudo dnf remove foo-bar --setopt=clean_requirements_on_remove=True

Как dnf определяет зеркала, с которых будет загружать пакеты?¶

По умолчанию в актуальных версиях Fedora применяется технология metalink, при помощи которой на основе внешнего IP-адреса сервер определяет ближайшие зеркала по географическому признаку и отдаёт результат в виде отсортированного списка с указанием приоритетов.

Также существует альтернативная реализация в виде плагина fastestmirror , который определяет самое быстрое зеркало локально при помощи ICMP PING. Реальных замеров скорости при этом не производится, поэтому их качество остаётся на достаточно низком уровне.

Как включить в dnf использование плагина fastestmirror?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной fastestmirror (при отсутствии добавим):

fastestmirror=1

Как очистить кэш плагина dnf fastestmirror?¶

Удалим файл с кэшем плагина fastestmirror:

sudo rm -f /var/cache/dnf/fastestmirror.cache

Почему dnf не проверяет подписи локально устанавливаемых пакетов?¶

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

При необходимости данная функция может быть включена .

Как включить проверку подписей для локально устанавливаемых пакетов?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной localpkg_gpgcheck (при отсутствии добавим):

localpkg_gpgcheck=1

Какой вид самодостаточных пакетов является лучшим?¶

Как вывести список пакетов из другой установки?¶

Выведем список установленных пакетов другой инсталляции Fedora:

rpm -qa --dbpath /path/to/other/var/lib/rpm

Здесь /path/to/other/var/lib/rpm – полный путь к базе RPM.

Как мне переустановить пакет?¶

Для переустановки пакета или пакетов можем воспользоваться штатной функцией reinstall dnf.

Переустановим пакет foo-bar:

sudo dnf reinstall "foo-bar*"

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

sudo dnf reinstall "*"

Как определить какому пакету принадлежит файл?¶

Воспрользуемся прямым вызовом rpm для получения информации о принадлежности файла какому-либо установленному пакету (для не установленных существует иной способ ):

rpm -qf /path/to/file

Здесь /path/to/file – абсолютный путь к файлу, который необходимо проверить.

Если принадлежность установлена, будет выдано полное имя пакета. В противном случае – сообщение об ошибке.

Как проверить какие файлы в системе были изменены?¶

Воспрользуемся прямым вызовом rpm для выполнения полной проверки и вывода информации о результатах:

sudo rpm -qVa --nomtime

Далеко не всё является ошибкой. Например сообщение об изменённых файлах конфигурации является абсолютно нормальным явлением.

Что такое fedora-cisco-openh264?¶

Репозиторий fedora-cisco-openh264 представляет специальную бинарную сборку библиотеки openh264, которая применяется в браузере Mozilla Firefox для аудио/видео вызовов, для США и Австралии (т.е. стран, где действуют патенты на алгоритмы).

Пользователям из всех остальных стран мы рекомендуем использовать ffmpeg-libs из репозитория RPM Fusion , который предоставляет все доступные кодеки мультимедиа без каких-либо ограничений.

Отключим данный репозиторий:

sudo dnf config-manager --set-disabled fedora-cisco-openh264

Удалим установленные из него пакеты:

sudo dnf remove openh264 mozilla-openh264 gstreamer1-plugin-openh264

Как запретить цвета в выводе dnf?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Изменим значение переменной color (при отсутствии создадим):

color=never

Сохраним изменения в файле.

Как отключить использование zchunk в dnf?¶

Откроем главный конфигурационный файл dnf:

sudoedit /etc/dnf/dnf.conf

Добавим в самый конец следующую строку:

zchunk=False

Сохраним изменения в файле.

Как отключить телеметрию в dnf?¶

По умолчанию для основных репозиториев Fedora, начиная с версии 32, один раз в неделю dnf отправляет beacon, чтобы можно было оценить количество пользователей дистрибутива.

Для отключения откроем главный конфигурационный файл dnf:

sudoedit /etc/dnf/dnf.conf

Добавим в самый конец следующую строку:

countme=False

Сохраним изменения в файле.

Как вывести список пакетов, использующих при сборке определённый?¶

Однократно подключим репозитории с исходниками и при помощи dnf выведем список пакетов, для сборки которых необходим foo-bar-devel:

dnf repoquery -q --releasever=rawhide --disablerepo="*" --qf="%" --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires="foo-bar-devel"

Как удалить все пакеты из определённого репозитория?¶

Удалим все пакеты, установленнные из репозитория foo-bar

sudo dnf repository-packages --installed foo-bar remove

Как удалить все пакеты с отладочной информацией?¶

Удалим все пакеты с отладочной информацией, установленные из основных репозиториев Fedora:

sudo dnf repository-packages --installed fedora-debuginfo remove sudo dnf repository-packages --installed updates-debuginfo remove sudo dnf repository-packages --installed updates-testing-debuginfo remove

Как изменить количество одновременно загружаемых пакетов?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Добавим переменную max_parallel_downloads с необходимым значением, например 10 (по умолчанию 3, максимум 20):

max_parallel_downloads=10

Как установить порог скорости до выбора другого зеркала?¶

Откроем файл /etc/dnf/dnf.conf в текстовом редакторе:

sudoedit /etc/dnf/dnf.conf

Добавим переменную minrate с необходимым значением, например 200k (по умолчанию 1000; допускаются суффиксы k (килобайты в секунду) и M (мегабайты в секунду)):

minrate=200k

GNOME Software при установке выбирает Flatpak вместо RPM. Как исправить?¶

GNOME Software в конфигурации по умолчанию отдаёт предпочтение Flatpak-пакетам перед стандартными RPM при совпадении ID.

Исправим это, изменив приоритет опцией packaging-format-preference:

gsettings set org.gnome.software packaging-format-preference "['RPM', 'flatpak']"

Как извлечь файлы из RPM-пакета без его установки?¶

Способ 1. Классический.¶

Воспользуемся rpm2cpio для преобразования RPM-пакета в CPIO-архив и при помощи одноимённого архиватора распакуем его:

mkdir /tmp/foo-bar pushd /tmp/foo-bar rpm2cpio /path/to/foo-bar-1.0.0-1.fc38.x86_64.rpm | cpio -idmv popd

Способ 2. Современный.¶

Конвертируем RPM в стандартный tarball утилитой rpm2archive и осуществим извлечение файлов из него:

mkdir /tmp/foo-bar cat /path/to/foo-bar-1.0.0-1.fc38.x86_64.rpm | rpm2archive - | tar -xz -C /tmp/foo-bar

Быстрый поиск

Навигация

  • Основная информация
  • Установка системы
  • Пакетный менеджер и установка пакетов
    • Какой менеджер пакетов используется в настоящее время?
    • Могу ли я использовать Yum в Fedora?
    • Что такое Flatpak пакеты?
    • Какие преимущества и недостатки у Flatpak пакетов?
    • Можно ли устанавливать программы посредством make install?
    • Можно ли использовать PIP или NPM для установки программ и модулей?
    • Нужной Python библиотеки нет в репозиториях. Как можно безопасно использовать PIP?
    • Как правильно применять Python Virtual Environment?
    • Как удалить установленные пакеты из Python Virtual Environment?
    • Как правильно обновлять систему?
    • Как часто следует устанавливать обновления системы?
    • Можно ли автоматизировать установку критических обновлений?
    • Как мне обновить Fedora до новой версии?
    • Возможно ли сделать откат к предыдущей версии Fedora?
    • Как мне обновить Fedora до Rawhide?
    • Возможно ли откатиться с Rawhide назад на обычный релиз?
    • Можно ли обновляться через несколько версий?
    • Когда лучше выполнять обновление при выходе новой версии дистрибутива?
    • При обновлении dnf ругается на дубликаты пакетов.
    • База RPM оказалась повреждена. Как восстановить?
    • Dnf сохраняет старые ядра. Это нормально?
    • Как можно уменьшить количество сохраняемых ядер?
    • Как настроить работу dnf через прокси?
    • Как отключить установку слабых зависимостей?
    • Как мне запретить установку обновлений для ряда пакетов?
    • Что такое Delta RPM?
    • Как отключить использование Delta RPM?
    • Как можно вручную удалить старое ядро?
    • Какие сторонние репозитории лучше всего подключать?
    • Как работать с Flatpak пакетами в Fedora?
    • В системе нет кодеков мультимедиа. Как их установить?
    • Как отключить автообновление кэшей dnf?
    • Что лучше: dkms или akmods?
    • Каким способом можно обновить пакет из тестовых репозиториев?
    • Как получить список файлов установленного пакета?
    • Как узнать в каком пакете находится конкретный файл?
    • Можно ли установить несколько версий Java в систему?
    • Как вывести список пакетов из определённого репозитория?
    • Как вывести список пакетов, установленных не из репозиториев, либо удалённых из них?
    • Как очистить журнал транзакций dnf?
    • Как сохранить список установленных пакетов, чтобы легко установить их после переустановки системы?
    • Можно ли скачать, но не устанавливать пакет из репозитория?
    • Как правильно включать или отключать репозитории?
    • Что такое модульные репозитории?
    • Мне не нужна поддержка модулей. Как их можно отключить?
    • Можно ли устанавливать обновления через dnf из графического режима?
    • Безопасно ли использовать основанные на PackageKit модули обновления из графического режима?
    • Как правильно тестировать новые версии пакетов в Fedora?
    • Как проще установить определённое обновление из тестового репозитория?
    • Как скачать определённую сборку пакета из Koji?
    • Почему некоторые пакеты в Fedora не обновляют до новейших версий?
    • Какие пакеты разрешено обновлять до новых версий в пределах стабильного выпуска?
    • При запуске dnf без прав суперпользователя он заново загружает и обновляет кэши. Это нормально?
    • Как удалить все установленные в системе 32-битные пакеты?
    • Как вывести список установленных пакетов, от которых никто не зависит?
    • Можно ли создать собственное зеркало репозиториев Fedora?
    • Безопасно ли устанавливать обновления через небезопасные соединения?
    • Безопасно ли использовать COPR репозитории?
    • Можно ли использовать в Fedora Snap пакеты?
    • Безопасно ли устанавливать и удалять пакеты группами?
    • Как установить группу пакетов?
    • Как удалить группу пакетов?
    • Как автоматически удалить не нужные более пакеты?
    • Как отметить пакет в качестве установленного пользователем?
    • Как запретить автоматически удалять не нужные более зависимости?
    • Как однократно передать dnf параметр?
    • Как dnf определяет зеркала, с которых будет загружать пакеты?
    • Как включить в dnf использование плагина fastestmirror?
    • Как очистить кэш плагина dnf fastestmirror?
    • Почему dnf не проверяет подписи локально устанавливаемых пакетов?
    • Как включить проверку подписей для локально устанавливаемых пакетов?
    • Какой вид самодостаточных пакетов является лучшим?
    • Как вывести список пакетов из другой установки?
    • Как мне переустановить пакет?
    • Как определить какому пакету принадлежит файл?
    • Как проверить какие файлы в системе были изменены?
    • Что такое fedora-cisco-openh264?
    • Как запретить цвета в выводе dnf?
    • Как отключить использование zchunk в dnf?
    • Как отключить телеметрию в dnf?
    • Как вывести список пакетов, использующих при сборке определённый?
    • Как удалить все пакеты из определённого репозитория?
    • Как удалить все пакеты с отладочной информацией?
    • Как изменить количество одновременно загружаемых пакетов?
    • Как установить порог скорости до выбора другого зеркала?
    • GNOME Software при установке выбирает Flatpak вместо RPM. Как исправить?
    • Как извлечь файлы из RPM-пакета без его установки?

    Related Topics

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *