Modernizar Fedora Linux En Línea Utilizando Gestor de Paquetes

Ben Cotton, Kamil Páral, Caleb McKee Versión F37, F38, F39, F40 Last review: 2023-11-07
Esta página contiene información que explica cómo actualizar Fedora Linux en línea usando dnf (sin el complemento modernizado del sistema DNF).

Esto no es un método de modernización admitido. Lea Modernizar a una liberación nueva de Fedora Linux para consultar un listado de métodos mantenidos y testeados de modernización. Los pasos incluidos dentro de la guía están a tu propio riesgo.

Modernizar Fedora Linux utilizando directamente dnf

Participar

Si moderniza usando el DNF y muestra cualquier problema de dependencia, infórmelos en Bugzilla. Pero lea esta página, todas las páginas de referencias y busque en los archivadores el listado de correo antes de rellenar los informes de falles. Y, por supuesto, ayúdenos a mantener esta página actualizada.

Si desea ayudar para realizar modernizaciones en vivo que funcionen limpiamente, únase a Live Upgrade Special Interest Group.

Modernización entre versiones múltiples

If you need to upgrade across several releases, it is generally recommended to go one release at a time: for example, rather than going directly from Fedora Linux 37 to Fedora Linux 39, first go to Fedora Linux 38 and then to Fedora Linux 39. This tends to reduce the number of package dependency issues you may encounter. If you are upgrading from an End of life release, please also see the end-of-life section.

Instrucciones para modernizar utilizando dnf

1. Respalde su sistema

Respalde cualquier dato personal a una unidad de disco externa o a otra máquina. Si hay algún error no recuperable que requiera una instalación limpia, no desea perder ningún dato.

2. Lea sobre problemas comunes

Más abajo en esta página encontrará una lista de problemas comunes relacionados con las actualizaciones de DNF para versiones específicas. Algunos requieren atención antes de la modernización.

Se pueden encontrar consejos generales sobre la actualización de Fedora Linux en la página Upgrading. Además leería la Installation Guide y Release Notes para la versión que planea modernizar; contiene información importante respecto a los temas de modernización. Finalmente, marque el listado de Common bugs.

3. Quitar material

Revisa y elimina todos los archivos .rpmsave y .rpmnew antes y después de modernizar. (Si tiene habilitado SELinux, recuerda revisar el contexto de seguridad si mueves alrededor los archivos de configuración).

Find unused config files + Merge and resolve the changes found by the following script: dnf install rpmconf; rpmconf -a. Now find and remove old config which nobody owns: rpmconf -c.

Ahora es un buen momento para desinstalar los paquetes que no utilizas, especialmente los paquetes no estándar.

Find and review "unused" packages + You can find packages not required by other packages with the tool package-cleanup from the dnf-utils package: dnf install dnf-utils; package-cleanup --leaves. These packages could be candidates for removal, but check to see whether you use them directly or if they are used by applications not backed by rpm packages. Remove them with dnf remove package-name-and-version. Another useful tool for cleaning up unused packages is rpmreaper. It’s an ncurses application that lets you view rpm dependency graph and mark packages for deletion. Marking one package can make other packages leaf, which you can see immediately, so you don’t have to run the tool several times to get rid of a whole sub-tree unused packages. Install with dnf install rpmreaper.
Find and review "lost" packages + You can find orphaned packages (i.e. packages not in the repositories anymore) with package-cleanup --orphans. This will also show packages which have been partially uninstalled but where the "%postun" script failed.

4. Realizar la modernización

Si tiene repositorios de terceros configurados, es posible que necesites ajustarlos para la versión de Fedora Linux nueva. Si cambia de una versión de Fedora Linux a otra, no suele ser necesario hacer nada. Si cambia a Rawhide desde una versión estándar de Fedora Linux (o viceversa), la mayoría de las veces también deberá instalar los RPM de la versión de Rawhide desde el repositorio de terceros (o los estándar, si vuelve a cambiar).

Tenga en cuenta que es probable que la modernización falle si hay dependencias obsoletas de paquetes que no están respaldados por un repositorio dnf o respaldados por un repositorio que no esté preparado para la versión nueva.

Es una buena idea realizar la modernización fuera del entorno gráfico. Salga de su escritorio gráfico y después

fedora-upgrade

Hay disponible un pequeño script nombrado como fedora-upgrade que automatiza el proceso descrito a continuación. Para ejecutarlo, haga lo siguiente

$ sudo dnf install fedora-upgrade
$ sudo fedora-upgrade

Al realizar una modernización a través del intérprete remoto, es una buena idea utilizar la utilidad screen o tmux para poder volver a ejecutar la transacción en caso de que se caiga la conexión.

Alternativamente, siga los pasos del manual:

Vaya a una consola de texto

ctrl + alt + F2

(o)

acceda como root, y vaya a multi-user.target

systemctl isolate multi-user.target

Actualice completamente su instalación actual de Fedora Linux

# dnf upgrade

Instale la clave de firma del paquete para la versión a la que está modernizando

Si moderniza a dos versiones o menos desde Fedora Linux 20 o posterior, este paso no debería ser necesario. Si moderniza desde una versión anterior de Fedora Linux o a tres o más versiones, es posible que deba importar la clave de firma para la versión de destino.

Si resulta que no es así, sería capaz de importar claves de la siguiente manera:

 # rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-23-x86_64

, sustituyendo «23» y «x86_64» con la versión nueva de Fedora Linux y su arquitectura, respectivamente.

You can also find package signing keys for currently-supported releases here. Keys for EOL releases can be found here. Click Primary (or Secondary, if you are using a secondary architecture), and you will see Get it from: Fedora Project, where Fedora Project is a link. Copy that URL, and run:

 # rpm --import (url)

para instalar la llave. En publicaciones anteriores, rpm puede tener problemas haciendo esto; si eso sucede, descargue el archivo con curl -o o wget e importe el archivo descargado.

Purgar la caché

Después elimine todas las trazas de la versión que está dejando desde el caché dnf en /var/cache/dnf.

# dnf clean all

Actualice a una versión superior en todos los paquetes

¡Nunca modernice energía de batería + Nunca ejecuta operación de modernización en energía de batería! Siempre conecte a las principales, si utiliza un portátil. Sin embargo, si su sistema tiene una batería, es buena idea asegurar que está cargada y conectada en caso de falta de energía durante la modernización.
Do not interrupt an upgrade for any reason + Once a live upgrade is started, do not stop the upgrade by rebooting, killing the process, or by any other method until it is complete. Interrupting an upgrade will cause the affected system to be in a mixed state — partially the old release and partially the new release. In this state, the system will not be reliable and will not operate as expected. You can try running dnf distro-sync and package-cleanup --problems to try and fix the problems.

Ejecute el comando upgrade:

# dnf --releasever=<target_release_number> --setopt=deltarpm=false distro-sync
Dependency issues + If you experience any dependency problems, you have to solve them manually. These are often caused by packages being retired in the newer release, but not properly obsoleted. Often it is enough to remove several problematic package(s). You may find that a package you care about depends on a package that must be removed for the upgrade to proceed. Usually you will be able to reinstall the important package once the upgrade is complete.

If it seems like you must remove a package with many dependencies, especially ones that look important, please be careful. If you are attempting to upgrade across multiple releases, try a smaller jump to see if that avoids the problem.

Si no está seguro de algún aspecto, solicite ayuda en un listado de correo, un foro o IRC antes de desinstalar paquetes.

5. Asegúrese que Fedora Linux sea modernizado

Distro-sync normalmente también se encargará de las modernizaciones de los repositorios de terceros que hayas habilitado. Confirme con dnf repolist una vez finalizado el proceso de modernización. dnf podría presentar problemas de conflictos o requisitos. Esto probablemente se deba a que usaste repositorios no estándar o instalaste paquetes no estándar manualmente. Intente averiguar qué paquete causa el problema (o al menos forma parte de la cadena de dependencias); desinstálalo y vuelva a intentarlo. Recuerda reinstalar los paquetes si son esenciales.

Asegúrese que todos los paquetes esenciales (nuevos) desde la versión nueva están instalados con

# dnf group upgrade 'Minimal Install'

Quizá desde actualizar también otros grupos, consulte

# dnf group list -v

Por ejemplo

# dnf group upgrade "GNOME Desktop" \
    "Development Tools" "Sound and Video" \
    "Games and Entertainment" "Administration Tools" \
    "Office/Productivity" "System Tools"

6. Preparar para rearrancar

Antes de arrancar, normalmente deberías instalar el gestor de arranque desde tu nuevo grub ejecutando

/usr/sbin/grub2-install BOOTDEVICE
  • donde BOOTDEVICE suele ser /dev/sda o /dev/vda para algunas instalaciones de máquinas virtuales. Si tiene más de un disco duro, asegúrese de usar el dispositivo correcto.

Si recibe un error (p.e. /dev/sda no tiene ninguna unidad BIOS correspondiente), intente /usr/sbin/grub2-install --recheck BOOTDEVICE.

Quizá también es necesario actualizar el archivo config de grub:

cp --backup=numbered -a /boot/grub2/grub.cfg{,.bak} # crea una copia de respaldo
/usr/sbin/grub2-mkconfig -o /boot/grub2/grub.cfg # actualiza el archivo config

7. Purgar su sistema

Nuevamente, purge su sistema como se describe en la sección 2. También es posible que desee eliminar algunos archivos de caché que ya no se utilizan, por ejemplo, archivos de versiones anteriores de Fedora Linux en los siguientes directorios:

  • /var/cache/dnf

  • /var/cache/mock

  • /var/lib/mock

Notas específicas de lanzamiento

Nota: las anotaciones específicas de la publicación para liberaciones End of live están en el EOL package manager upgrade page.

Desde pre-liberación

Si desea modernizar a una publicación final desde un Alpha, Beta, o candidato de liberación, consulte Upgrading from pre-release to final.

Para Rawhide

Consulte en la página de libeación Rawhide para más información en Rawhide.

# dnf upgrade
# dnf install dnf-plugins-core fedora-repos-rawhide
# dnf config-manager --set-disabled fedora updates updates-testing
# dnf config-manager --set-enabled rawhide
# dnf clean -q dbcache packages metadata
# dnf --releasever=rawhide --setopt=deltarpm=false distro-sync --nogpgcheck

## Opcional: se advierte generalmente realizar un selinux autorelabel y reiniciar
# touch /.autorelabel

Fedora Linux 31

Antes de ejecutar

dnf distro-sync

debe ejecutar

dnf module reset libgit2 exa bat

Consulte Bug 1747408.

Fedora Linux 30

Sin instrucción especial. Siga las instrucciones de arriba.

Fedora Linux 29

Sin instrucción especial. Siga las instrucciones de arriba.

Modernice desde final de vida de herencias (EOL) de publicaciones de Fedora Linux

Tenga en cuenta que Fedora recomienda encarecidamente no ejecutar una versión finalizada en ningún sistema de producción ni en ningún sistema conectado a internet público, bajo ninguna circunstancia. Nunca permita que una implementación de producción de Fedora Linux llegue al final de su vida útil.

With that in mind, if you do have an end-of-life release installed on a system you cannot just discard or re-deploy, you can attempt to upgrade it, though this is a less-tested and less-supported operation.

Para instrucciones detalladas en modernizaciones desde liberaciones FDV, lea Upgrading from EOL Fedora Linux using package manager.

¿Ve algún error tipográfico, algo desaparecido u obsoleto o algo que pueda ser mejorado? Edite este documento en https://pagure.io/fedora-docs/quick-docs.