💾 Archived View for tilde.team › ~rami › redhat_upgrade.gmi captured on 2023-12-28 at 16:13:06. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

➡️ Next capture (2024-05-10)

-=-=-=-=-=-=-

~Rami ₪ MANUALS

רמי

SUBJECT: Fedora: Глобальный апгрейд релизов ОС

AUTHOR: Rami Rosenfeld

DATE: 12/09/22

TIME: 15.00

LANG: ru, en

LICENSE: GNU FDL 1.3

TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, privacy, security, rhel, centos, mate, xfce, lxde, spin, de, systemd, systemctl, selinux, firewalld, dnf, rpm

Fedora: Глобальный апгрейд релизов ОС (rel. v.N > rel. v.N+1)

INTRO

Важно! Перед запуском процесса обновления ОС на новый релиз, сохраните свои критичные данные на стороннем носителе.

Важно! На всякий случай, заранее подготовьте Live USB-Flash со старой (т.е. текущей) версией операционной системы).

Рекомендация: не делайте апгрейд сразу на +2 версии релиза (хотя это допустимо). Не делайте апргрейд версий Fedora с закончившимся сроком поддержки (EOL: "end-of-the-life").

NOTE

dnf upgrade --refresh

systemctl reboot

dnf install dnf-plugin-system-upgrade

dnf system-upgrade download --releasever=36

Примечание 1: В предыдущей строке измените значение --releasever на необходимое. Например, если вы обновляетесь с 35 (текущая версия Fedora) на 36, выставьте значение "36" (без кавычек и пробела).

Примечание 2: Если некоторые пакеты будут иметь неудовлетворенные зависимости (например, в случае использования ранее сторонних репозиториев), добавьте опцию --allowerasing, разрешающую удаление:

dnf system-upgrade download --releasever=36 --allowerasing

Примечание 3: Если вы хотите удалить/установить некоторые пакеты вручную перед запуском обновления ОС, используйте опцию --setopt=keepcache=1 - она удержит (т.е. сохранит) кэш пакетов, скачанных с помощью dnf; в противном случае все обновляемые пакеты будут загружены заново:

dnf system-upgrade download --releasever=36 --allowerasing --setopt=keepcache=1

dnf system-upgrade reboot

Пост-установочные операции

Многие конфигурационные файлы хранятся по адресу /etc. Если вы видоизменяли их перед апгрейдом ОС, система RPM создаст новые конфигурационные файлы с расширением .rpmnew, а старые пометит как .rpmsave (резервные копии ваших конфигурационных файлов). Вы можете найти эти файлы или использовать утилиту rpmconf для упрощения данного процесса:

dnf install rpmconf

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

rpmconf -a

После глобального апгрейда ОС некоторые пакеты могут утратить работоспособность (устареть по разным причинам, не использоваться более в новом релизе ОС, разработчик не проявляет активности), но они будут присутствовать в обновленной ОС. Для их удаления выполните:

dnf install remove-retired-packages

remove-retired-packages

dnf repoquery --unsatisfied

dnf repoquery --duplicates

После глобального апгрейда ОС все пакеты из официальных репозиториев должны быть обновлены до последней версии. Если некоторые пакеты не содержатся более в репозиториях, их можно найти и удалить:

dnf list extras

Однако будьте осторожны со следующей командой:

dnf remove $(dnf repoquery --extras --exclude=kernel,kernel-\*)

dnf install symlinks

symlinks -r /usr | grep dangling

Если вы наблюдаете предупреждения при использовании RPM/DNF, ваша база данных RPM может быть повреждена. Вначале сохраните бэкап содержимого /var/lib/rpm, затем пересоберите базу данных RPM:

rpm --rebuilddb

Если по какой-то причине ваша ОС или ее отдельные компоненты обновились не полностью, используйте команду:

dnf distro-sync --allowerasing

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

Если после апгрейда ОС вы наблюдаете предупреждения, связанные с правилами SELinux, скорее всего, некоторые файлы имеют некорректные разрешения SELinux. Зачастую это связано с тем, что вы деактивировали его ранее. Для исправления SELinux-контекстов безопасности файлов выполните:

fixfiles -B onboot

Примечание: Процесс произойдет во время перезагрузки ОС.

dnf system-upgrade clean

dnf clean all

Подробнее см.:

DNF System Upgrade

DNF Command Reference

₪ Back to home ₪

🄯 Rami Rosenfeld, 2022. GNU FDL 1.3.