Как обновить Fedora 37 с Fedora 36 |
Как мне обновить Fedora 36 до Fedora 37? Fedora 37 выпущена и теперь доступна для установки как на настольные компьютеры, так и на серверы. Чтобы воспользоваться новейшими функциями, доступными в Fedora 37, требуется обновление или новая установка.
Большинство предпочтет выполнить обновление до последней версии Fedora на своей рабочей станции, сохранив при этом файлы и установленные приложения. Вместо выполнения новой установки можно легко перейти на более новую версию Fedora Workstation или Server. Прежде чем вы сможете начать процесс обновления, сначала подтвердите версию Fedora, которую вы используете.
$ cat /etc/os-release NAME="Fedora Linux" VERSION="36 (Thirty Six)" ID=fedora VERSION_ID=36 VERSION_CODENAME="" PLATFORM_ID="platform:f36" PRETTY_NAME="Fedora Linux 36 (Thirty Six)" ANSI_COLOR="0;38;2;60;110;180" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:36" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f36/system-administrators-guide/" SUPPORT_URL="https://ask.fedoraproject.org/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=36 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=36 PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
Обновление до Fedora 37 с рабочей станции/сервера Fedora 36
Обновление системы Fedora можно выполнить из командной строки или из графического интерфейса рабочего стола. Я предпочитаю обновление с помощью командной строки, поскольку любые возникающие ошибки можно легко устранить.
Шаг 1: Система резервного копирования
Сделайте резервную копию важных файлов перед обновлением. Рекомендуется сделать это на внешнем диске или другой системе в вашей сети.
Вы можете проверить серию резервных копий в журнале Fedora Magazine.
Шаг 2. Обновите систему.
Давайте удостоверимся, что у нас установлены последние версии пакетов.
sudo dnf upgrade --refresh
Перезагрузка после обновления
sudo reboot
Шаг 3. Обновите Fedora 37 с Fedora 36.
После перезагрузки системы установите плагин DNF.
sudo dnf install dnf-plugin-system-upgrade
Нажмите y , чтобы принять установку.
. Transaction Summary ====================================================================================================================================================================================================== Install 6 Packages Total download size: 513 k Installed size: 1.8 M Is this ok [y/N]: y
Начните обновление рабочей станции Fedora, выполнив следующую команду в своем терминале.
sudo dnf system-upgrade download --releasever=37
Вы получите предупреждение о том, что обновление системы должно быть выполнено до запуска команды.
Before you continue ensure that your system is fully upgraded by running "dnf --refresh upgrade". Do you want to continue [y/N]: y
Эта команда загрузит все обновления для вашего компьютера локально, пока он готовится к фактическому обновлению.
Transaction Summary ======================================================================================================================================================= Install 38 Packages Upgrade 1760 Packages Remove 4 Packages Downgrade 3 Packages Total download size: 1.8 G DNF will only download packages, install gpg keys, and check the transaction. Is this ok [y/N]: y .
Примечание: Если у вас нарушены зависимости или устаревшие пакеты, блокирующие обновление , используйте эту команду.
sudo dnf system-upgrade download --releasever=37 --allowerasing
При успешной загрузке появится сообщение, подобное приведенному ниже.
Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Complete! Download complete! Use 'dnf system-upgrade reboot' to start the upgrade. To remove cached metadata and transaction use 'dnf system-upgrade clean' The downloaded packages were saved in cache until the next successful transaction. You can remove cached packages by executing 'dnf clean packages'.
Шаг 4. Начните обновление до Fedora 37 с Fedora 36.
После успешного выполнения команды перезагрузите компьютер и завершите обновление Fedora.
sudo dnf system-upgrade reboot
Дождитесь завершения обновления:

Проверьте свою версию Fedora с помощью команды ниже.
$ cat /etc/redhat-release Fedora release 37 (Thirty Seven) $ cat /etc/os-release NAME="Fedora Linux" VERSION="37 (Thirty Seven)" ID=fedora VERSION_ID=37 VERSION_CODENAME="" PLATFORM_ID="platform:f37" PRETTY_NAME="Fedora Linux 37 (Thirty Seven)" ANSI_COLOR="0;38;2;60;110;180" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:37" DEFAULT_HOSTNAME="fedora" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f37/system-administrators-guide/" SUPPORT_URL="https://ask.fedoraproject.org/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=37 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=37
Вывод neofetch должен выглядеть примерно так:

Наслаждайтесь использованием последней стабильной версии Fedora Workstation/Server и ознакомьтесь с другими руководствами, доступными в нашем блоге.
- Как установить AnyDesk в Fedora
- Как установить PostgreSQL 12 в Fedora
️ Как обновить Fedora Linux, чтобы получить новейшее программное обеспечение

Fedora Linux – это дистрибутив Linux, поддерживаемый сообществом Fedora Project.
Fedora очень часто приносит множество улучшений, исправлений ошибок, исправлений безопасности, новых возможностей.
Поэтому очень важно поддерживать все программное обеспечение в актуальном состоянии.
Fedora поддерживает такие менеджеры пакетов, как RPM (DNF), Flatpak, OSTree – графические интерфейсы по умолчанию: GNOME Software.
В этом руководстве мы узнаем, как обновить Fedora, чтобы получить новейшее программное обеспечение.
Существует два метода обновления Fedora: GUI и Терминал.
В данном примере мы обновляем пакеты (устанавливаем исправления безопасности, обновления ядра и программного обеспечения), а не переходим на новый релиз.
Метод 1: Обновление Fedora из терминала
Это рекомендуемый метод обновления программного обеспечения, так как вы получите более подробную информацию.
01. Во-первых, вы можете проверить, какие пакеты имеют доступные обновления, введите
$ dnf check-update
Чтобы проверить сводку доступных обновлений, введите
$ dnf updateinfo
Список обновлений и типов, к которым они относятся:
$ dnf updateinfo list
02. Теперь, чтобы начать обновление, выполните следующую команду:
$ sudo dnf upgrade
dnf update и upgrade делают то же самое. dnf update является устаревшим алиасом dnf upgrade и рекомендуется выполнять dnf upgrade.
- Команды Apt Update и Upgrade – в чем разница?
- Разница между apt-get upgrade и dist-upgrade
03. Выполните перезагрузку для завершения обновления Fedora.
$ sudo shutdown -r now
04. Наконец, вы можете проверить систему, снова выполнив команду dnf updateinfo или check-update.
Вы не должны увидеть ни одного пакета, доступного для обновления.
Если ядро обновлено, вы можете увидеть новую версию.
$ uname -r
Метод 2: Обновление Fedora из GUI
На рабочем столе Fedora по умолчанию Gnome есть приложение Software updater, которое вы можете использовать для обновления Fedora.
Откройте приложение Software и перейдите на панель Updates, там нажмите на кнопку Restart & Update, чтобы начать обновление.
Примечание: Программное приложение также может быть использовано для обновления до нового выпуска, когда он станет доступен, рекомендуется для рабочей станции Fedora.
Убедитесь, что у вас есть резервное копирование для восстановления после любого повреждения, вызванного обновлением системы.
Заключение
В этом руководстве мы узнали, как обновить Fedora, чтобы получить новейшее программное обеспечение.
Хорошей практикой является проверка логов изменений с помощью dnf updateinfo и соответствующее определение приоритетов обновлений.
Пакетный менеджер и установка пакетов¶
Какой менеджер пакетов используется в настоящее время?¶
Dnf, являющийся, в свою очередь, форком Yum.
Могу ли я использовать Yum в Fedora?¶
Начиная с Fedora 24, yum присутствует в Fedora лишь как символическая ссылка на dnf, сохранённая для обратной совместимости.
Что такое Flatpak пакеты?¶
Flatpak – это современный прогрессивный формат самодостаточных пакетов для GNU/Linux. Он поддерживает рантаймы, изоляцию внутри песочниц, установку без наличия прав суперпользователя и многое другое.
Какие преимущества и недостатки у Flatpak пакетов?¶
- поддерживает динамическую линковку с большим количеством библиотек из рантаймов, что решает проблемы с лицензированием, их поддержкой в актуальном состоянии и исправлением в них ошибок, а также уязвимостей;
- библиотеки, для которых нет рантаймов, могут быть упакованы непосредственно внутрь флатпака и подгружаться по мере необходимости;
- Flatpak позволяет установить разные версии приложений одновременно;
- для установки не требуются права суперпользователя;
- поддерживается контейнерная изоляция приложения внутри собственной песочницы;
- приложению могут быть выданы только необходимые права доступа и разрешения;
- могут использоваться на любом дистрибутиве GNU/Linux без перекомпиляции и перекомпоновки;
- лёгкое создание и хостинг собственных репозиториев.
- из-за того, что Flatpak пакеты по определению должны запускаться на разных дистрибутивах, они содержат в себе все зависимости либо в виде рантаймов, либо внутри флатпака;
- в публичных репозиториях (например Flathub) мейнтейнеры не занимаются обновлением своих пакетов до актуальных рантаймов, из-за чего уже при установке нескольких приложений в системе появится куча различных версий одних и тех же рантаймов, что тратит очень много места на диске впустую;
- из-за использования разных рантаймов полноценно не используется разделяемая память библиотек, т.е. каждое приложение загружает все свои зависимости в собственное адресное пространство;
- отсутствует возможность использования общесистемных настроек среды для контейнеризированных приложений;
- отсутствует возможность использования уже установленных в системе библиотек.
Можно ли устанавливать программы посредством make install?¶
Категорически не рекомендуется, ибо:
- make install порождает в системе кучу никем и ничем не отслеживаемых файлов: бинарников, конфигов, прочих файлов. Это в большинстве случаев приведёт к множеству проблем при обновлении или удалении;
- make install не учитывает файлы других пакетов и может запросто перезаписать или удалить в системе что-то важное, т.к. действие выполняется с правами суперпользователя;
- make install не ведёт никакого журнала действий, поэтому всё, что оно произвело, невозможно полноценно откатить;
- установленные через make install приложения очень часто невозможно удалить вообще, т.к. многие разработчики не делают правило make uninstall, что, в принципе, верно ибо оно не нужно большинству, а если и делают, то оно способно лишь удалить скопированные файлы. Изменения конфигов, других файлов и пр. откатить оно не способно.
Установка пакетов штатным пакетным менеджеров имеет множество преимуществ:
- при установке пакетный менеджер разрешает все зависимости, добавляет нужные, устраняет конфликты;
- перед выполнением установки пакетный менеджер проверяет, чтобы устанавливаемый пакет не вмешивался в работу других, а также самой системы. Если это так, он не будет установлен;
- во время установки все изменения, сделанные пакетом, вносятся в специальную базу данных пакетного менеджера и при удалении или обновлении будут учтены;
- при удалении пакета производится полный откат действий, предпринятых при установке (даже если были изменены какие-то конфиги, эти действия будут откачены полностью, т.к. хранится diff внутри базы ПМ);
- при обновлении перезаписываются только изменённые файлы. Более того, может быть скачан и установлен только дифф. изменений;
- если при обновлении пакета возникает конфликт какого-то конфига, он не будет молча перезаписан, а будет применён патч на существующий, либо, если это невозможно, будет запрошено действие у пользователя.
Можно ли использовать 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
- Documentation overview
- Previous: Установка системы
- Next: Системное администрирование
Как перейти на Fedora 38 с Fedora 37 Рабочая станция и сервер

Fedora 38 уже выпущена Это пошаговое руководство объясняет, как обновиться до Fedora 38 с Fedora 37 и более старых версий. Если вы уже используете Fedora 37, вы можете безопасно перейти на Fedora 38 для настольных компьютеров или серверов, чтобы получить последние возможности, улучшения производительности и стабильности.
Предварительные условия
Перед обновлением до Fedora 38, вам необходимо выполнить несколько важных задач.
- Настоятельно РЕКОМЕНДУЕТСЯ сделать бэкап ваших важных данных перед обновлением до Fedora 38. Это должно быть вашим первым шагом, когда вы хотите обновить любую систему, независимо от версии операционной системы. Убедитесь, что у вас есть резервные копии всех важных файлов, каталогов, настроек конфигурации, закладок браузера, файлов dot и т.д.
- Обновление Fedora 38, вероятно, займет некоторое продолжительное время. Поэтому убедитесь, что у вас стабильное подключение к Интернету и бесперебойное питание.
- Во время обновления ваша система будет автоматически перезагружаться, чтобы применить обновления. Поэтому убедитесь, что в данный момент не запущены какие-либо важные задания (например, резервное копирование по расписанию).
- Посмотрите Общие проблемы Fedora 38 и решите, хотите ли вы продолжить.
- Поддерживаются как обновления до следующего выпуска (например, с 37 до 38), так и обновления, пропускающие один выпуск (например, с 36 до 38).
Внимание Обновления более чем на 2 релиза не поддерживаются. Например, вы не хотите перейти с Fedora 35 на 38. Иногда это может сработать. Однако, если вы столкнетесь с какими-либо проблемами, вы не получите никакой поддержки. В таких случаях сначала перейдите на следующий релиз (т.е. с 35 на 36), а затем попробуйте перейти с 36 на 38. Всегда рекомендуется переходить на следующий релиз до того, как он достигнет EOL .
Обновление до Fedora 38 с Fedora 37
Задача обновления до Fedora 38 может быть выполнена двумя способами. Мы можем обновить Fedora 38 через программное обеспечение GNOME ( GUI ) и из командной строки ( CLI ). Сначала мы рассмотрим графический метод с использованием программного обеспечения GNOME . Это подходит для тех, кто использует настольную версию Fedora.
Перед началом работы обновите систему Fedora 37:
sudo dnf --refresh update sudo dnf upgrade
Перезагрузите систему, чтобы применить обновления:
sudo reboot
Давайте проверим текущую версию с помощью следующих команд:
cat /etc/fedora-release
Чтобы просмотреть подробный вывод версии, выполните следующие команды:
cat /etc/os-release

Как видите, в настоящее время в нашей системе установлена Fedora 37. Давайте обновим Fedora 37 до Fedora 38 любым из приведенных ниже способов.
Обновление рабочей станции до Fedora 38 с помощью GNOME Software
Шаг 1: Откройте ваш Gnome Software Center и перейдите в раздел Обновления. Вы увидите уведомление, которое гласит – Fedora 38 Now Available. Нажмите кнопку Загрузить, чтобы загрузить пакеты Fedora 38.

Необходимые пакеты для обновления до Fedora 38 будут загружены. Это займет некоторое время в зависимости от скорости интернета.

Шаг 2: После завершения загрузки Fedora 38, вам будет предложено перезагрузиться и обновиться. Нажмите на кнопку Перезагрузка & Обновление* чтобы продолжить установку обновлений.
Шаг 3: Появится новое всплывающее окно и предложит вам нажать на кнопку Перезагрузка & Установить обновление. Просто нажмите на нее, чтобы перезагрузить систему Fedora.

Введите пароль sudo для запуска обновлений.

Еще одно всплывающее окно появится снова и предложит вам нажать кнопку

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

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

Вы можете проверить, обновлена ли ваша система Fedora в разделе Обновления в Gnome Software.

Поздравляем! Мы успешно обновились до Fedora 38!
Шаг 4: Откройте окно терминала и проверьте установленную версию Fedora с помощью команды:
cat /etc/fedora-release Fedora release 38 (Thirty Eight)
Для просмотра подробного вывода выполните:
cat /etc/os-release
NAME="Fedora Linux" VERSION="38 (Workstation Edition)" ID=fedora VERSION_ID=38 VERSION_CODENAME="" PLATFORM_ PRETTY_NAME="Fedora Linux 38 (Workstation Edition)" ANSI_COLOR="0;38;2;60;110;180" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:38" DEFAULT_HOSTNAME="fedora" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f38/system-administrators-guide/" SUPPORT_URL="https://ask.fedoraproject.org/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=38 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=38 SUPPORT_END=2024-05-14 VARIANT="Workstation Edition" VARIANT_ID=workstation

Альтернативно, вы можете проверить версию Fedora в разделе Настройки -> О программе.

2. Обновление до Fedora 38 Server из командной строки.
Этот метод предназначен для тех, кто использует Fedora server edition в своей системе.
Шаг 1: Обновите текущий сервер Fedora 37 с помощью команд:
sudo dnf --refresh update sudo dnf upgrade
Перезагрузите систему, чтобы применить обновления.
sudo reboot
Шаг 2: Установите плагин dnf upgrade, который поможет вам загрузить пакеты Fedora 38, выполнив следующую команду:
sudo dnf install dnf-plugin-system-upgrade
Шаг 3: Загрузите пакеты Fedora 38:
sudo dnf system-upgrade download --releasever=38
Эта команда загрузит все последние пакеты и отобразит сводку о том, какие пакеты будут заменены, обновлены, обновлены или понижены. Выполнение этой задачи займет несколько минут, поскольку загружается большое количество пакетов.
Если некоторые из ваших пакетов имеют неудовлетворенные зависимости, обновление откажется продолжаться, пока вы не запустите его снова с дополнительной опцией —allowerasing .
sudo dnf system-upgrade download --releasever=38 --allowerasing
Шаг 4: Как только все пакеты будут загружены, выполните следующую команду, чтобы начать обновление.
sudo dnf system-upgrade reboot
Ваша система автоматически перезагрузится, и обновления начнет установку всех загруженных пакетов.
После успешного обновления система перезагрузится в новую версию сервера Fedora 38.
Задачи после обновления Fedora.
В этом разделе мы выполним несколько важных моментов после обновления, таких как изменение имени хоста, удаление ненужных пакетов, обновление конфигурационных файлов, удаление сиротских симлинков, очистка старых ядер и т.д.
1. Изменить имя хоста
Я обычно использую имя дистрибутива в качестве имени хоста. Например, имя хоста для моего настольного компьютера Fedora 38 будет fedora38. Если вы похожи на меня, измените имя хоста, чтобы оно соответствовало вашей текущей версии.
Чтобы изменить имя хоста, выполните:
sudo hostnamectl set-hostname fedora38
2. Очистка кэша метаданных DNF
После обновления, кэшированные метаданные и транзакции можно очистить с помощью следующих команд:
sudo dnf system-upgrade clean sudo dnf clean packages
3. Удаление старых пакетов
Список всех пакетов с нарушенными или неудовлетворенными зависимостями, выполните:
sudo dnf update sudo dnf repoquery --unsatisfied
Список всех дублирующих пакетов с помощью команды:
sudo dnf repoquery --duplicates
Список всех пакетов, которых нет в репозиториях:
sudo dnf list extras
Если они вам больше не нужны, просто выполните следующие команды для удаления старых и неиспользуемых пакетов.
sudo dnf remove $(sudo dnf repoquery --extras --exclude=kernel,kernel-*) sudo dnf autoremove
4. Очистка устаревших пакетов
Несколько пакетов будут удалены в каждом выпуске Fedora. Они могут быть устаревшими или разработчик отказался от них. Отмененные пакеты не будут получать никаких обновлений. Даже обновления безопасности.
Чтобы удалить устаревшие и отмененные пакеты, выполните:
sudo dnf install remove-retired-packages remove-retired-packages
5. Обновление файлов конфигурации системы
Для обновления файлов конфигурации системы используйте инструмент rpmconf .
Для установки инструмента rpmconf выполните:
sudo dnf install rpmconf
После завершения установки выполните следующую команду:
sudo rpmconf -a
6. Очистка старых ядер
Команда dnf autoremove не будет удалять неиспользуемые ядра, чтобы избежать непреднамеренного удаления ядра. Если вы хотите удалить старые ядра, вы можете использовать следующую команду:
sudo dnf remove $(dnf repoquery --installonly --latest-limit=-3)
Приведенная выше команда удалит все старые ядра и сохранит только последние 3 ядра.
*Внимание: * НАСТОЯТЕЛЬНО РЕКОМЕНДУЕТСЯ сохранять как минимум два ядра. Потому что, если после обновления возникнет проблема в текущей версии ядра, вы можете безопасно переключиться на более старое ядро.
7. Удалите сломанные симлинки
После обновления системы в ней останутся неиспользуемые симлинки. Вам нужно найти и удалить болтающиеся симлинки, которые никуда не ведут.
Чтобы найти сломанные симлинки в каталоге /usr , выполните:
sudo symlinks -r /usr | grep dangling
Чтобы удалить болтающиеся симлинки, выполните:
sudo symlinks -r -d /usr
Затем перезагрузите систему:
sudo reboot
Запустите использование последней версии Fedora 38.
Заключение
В этом руководстве мы рассмотрели, как обновиться до Fedora 38 с Fedora 37 через Gnome Software center и из терминала. В конце мы перечислили несколько шагов, которые необходимо сделать после обновления, чтобы очистить обновленную систему Fedora.

Зарубин Иван Эксперт по Linux и Windows
Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.