Cómo actualizar versiones obsoletas de distribuciones Linux

Actualizar a una versión más reciente de tu distribución Linux es esencial para mantener la seguridad, la compatibilidad y el soporte. Este artículo proporciona instrucciones paso a paso para actualizar sistemas desactualizados.

Importante: Antes de realizar cualquier actualización, haz una copia de seguridad de los datos importantes y asegúrate de que tu sistema tenga suficiente espacio en disco y una conexión a Internet fiable.

Estrategias generales de copia de seguridad

  • Directorios home: Contienen archivos de usuario, configuraciones y documentos.

  • Archivos de configuración del sistema: Almacenados en /etc, incluyendo configuraciones de servidor, red y usuario.

  • Bases de datos: MySQL/MariaDB, PostgreSQL, etc.

  • Datos web o de aplicaciones: Almacenados en /var/www, carpetas de aplicaciones personalizadas, etc.

  • Scripts y servicios personalizados: Cualquier elemento no predeterminado en /usr/local, /opt, etc.

Ejemplos de copia de seguridad por distribución

En el siguiente escenario, un dispositivo externo se ha montado previamente en el directorio /mnt/.

Ubuntu / Debian

Haz una copia de seguridad de los directorios home, bases de datos y configuraciones:

sudo apt update
sudo apt install rsync

Ejemplo: haz una copia de seguridad de /home y /etc en una unidad externa

sudo rsync -aAXv /home/ /mnt/backup/home/
sudo rsync -aAXv /etc/ /mnt/backup/etc/

Opcional: copia de seguridad de la lista de paquetes instalados

dpkg --get-selections > package-list.txt

Fedora

sudo dnf install rsync

Crea copias de seguridad

sudo rsync -aAXv /home/ /mnt/backup/home/
sudo rsync -aAXv /etc/ /mnt/backup/etc/

Lista de paquetes instalados

rpm -qa > installed-packages.txt

Debian: copia de seguridad de fuentes APT y configuraciones

sudo cp -r /etc/apt /mnt/backup/etc-apt
sudo cp /etc/fstab /mnt/backup/

CentOS / Rocky / AlmaLinux

Para copias de seguridad de servidores, incluye:

sudo yum install rsync  # o dnf para versiones más recientes

Copias de seguridad de archivos y configuraciones

sudo rsync -aAXv /home/ /mnt/backup/home/
sudo rsync -aAXv /etc/ /mnt/backup/etc/

Volcado de MySQL/MariaDB

mysqldump -u root -p --all-databases > all-databases.sql

Consejos para la seguridad de las copias de seguridad

  • Guarda las copias de seguridad en un dispositivo separado, como una unidad externa o un servidor remoto.

  • Prueba tus copias de seguridad restaurándolas en una máquina virtual o servidor de pruebas si es posible.

  • Para sistemas críticos, utiliza herramientas que admitan copias de seguridad incrementales y cifrado (como Borg o Restic).

Ubuntu

Ubuntu solo permite actualizaciones de una versión a la siguiente en orden secuencial. Esto significa que no puedes saltarte versiones durante el proceso. Por ejemplo, para actualizar de la 16.04 a la 20.04, primero debes actualizar a la 18.04 y luego de la 18.04 a la 20.04.

Primero, asegúrate de revisar la lista de comprobación previa a la actualización para preparar correctamente tu servidor para una actualización exitosa.

Una vez completado, puedes proceder al siguiente paso.

Ubuntu utiliza do-release-upgrade para las actualizaciones de versión.

Para comenzar la actualización, ejecuta:

sudo do-release-upgrade

El sistema realizará algunas comprobaciones y presentará un resumen previo a la actualización para tu confirmación. Durante el proceso, es posible que se te pida tomar decisiones sobre ciertos paquetes (como si deseas actualizarlos, mantenerlos o eliminarlos).

Al final de la actualización, se te pedirá que reinicies el sistema. La actualización no se considera completa hasta que el sistema se haya reiniciado.

Fedora

Asegúrate de que tu sistema y los paquetes instalados estén completamente actualizados antes de intentar una actualización del sistema a una nueva versión de Fedora Linux. Haz siempre una copia de seguridad de tus datos, ya que actualizar es un proceso potencialmente riesgoso y podrías necesitar restaurar los datos en caso de cualquier problema.

Para iniciar una actualización, sigue los siguientes pasos:

  1. Actualiza el sistema
    sudo dnf upgrade --refresh
    Reinicia el servidor

  2. Descarga los paquetes de la nueva versión (reemplaza 40 por la versión deseada)
    sudo dnf system-upgrade download --releasever=40

  3. Reinicia y comienza la actualización
    sudo dnf system-upgrade reboot

Una vez completado el proceso de actualización, tu sistema se reiniciará una segunda vez en la versión actualizada de Fedora Linux.

Debian

Antes de comenzar el proceso de actualización, asegúrate de hacer una copia de seguridad de tus datos, ya que actualizar es un proceso potencialmente riesgoso y podrías necesitar restaurar los datos en caso de cualquier problema.

Para actualizar la versión de Debian, sigue los siguientes pasos:

Paso 1. Primero, asegúrate de que tu sistema esté actualizado en su versión actual.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get full-upgrade

Paso 2. En un editor de texto, reemplaza el nombre en clave de tu versión por el de la siguiente versión en las fuentes de paquetes de APT.
Por ejemplo, la línea:
#    deb https://deb.debian.org/debian/ buster main
debe ser reemplazada por:

#    deb https://deb.debian.org/debian/ bullseye main
sudo nano /etc/apt/sources.list /etc/apt/sources.list.d/*

Si vas a migrar a Bookworm o posterior, entonces hay un nuevo repositorio disponible para firmware no libre.
Si lo deseas, puedes añadir non-free y non-free-firmware, dependiendo de tus necesidades específicas.
Por ejemplo:
#    deb https://deb.debian.org/debian/ bookworm main contrib non-free non-free-firmware
o
#    deb https://deb.debian.org/debian/ stable main contrib non-free non-free-firmware

Paso 3. Limpia y actualiza las listas de paquetes
sudo apt-get clean
sudo apt-get update

Paso 4. Realiza la actualización de versión principal, eliminando paquetes si es necesario:
sudo apt-get upgrade
sudo apt-get full-upgrade

Paso 5. Elimina los paquetes que ya no sean necesarios. Asegúrate de revisar esta lista: puede que quieras conservar algunos de ellos:
sudo apt-get autoremove

Paso 6. Reinicia para que los cambios tengan efecto (opcional, pero recomendado)
sudo shutdown -r now

Ahora revisa el contenido de  /etc/debian_version  y  /etc/os-release  y deberías ver información sobre el sistema actualizado.

CentOS/Almalinux/Rocky Linux

Estos sistemas operativos no admiten actualizaciones in situ de una versión principal a otra. Para pasar a la siguiente versión principal, deberás realizar una instalación limpia.

El proceso completo incluye los siguientes pasos:

  1. Haz una copia de seguridad de todos los datos relevantes que deban transferirse al nuevo sistema.
    Esto incluye, pero no se limita a:
    - Cuentas de usuario personalizadas (especialmente aquellas creadas manualmente para fines específicos)
    - Repositorios personalizados
    - Paquetes instalados manualmente que deban reinstalarse en el nuevo sistema
    - Contenido relacionado con sitios web

    Asegúrate de identificar todos los servicios de los que es responsable el servidor. Esto podría incluir bases de datos, servidores de correo, configuraciones DNS y más. Si no estás seguro de qué respaldar, es mejor pecar de precavido y respaldar todo. También puedes consultar con un desarrollador o administrador de sistemas para identificar todos los datos críticos.

  2. Guarda la copia de seguridad en una ubicación segura fuera del servidor actual.
    Asegúrate de que la copia de seguridad esté almacenada de forma segura y sea accesible cuando estés listo para restaurar los datos.

  3. Reinstala el sistema operativo con la versión más reciente deseada.

  4. Restaura la copia de seguridad en el nuevo sistema.
    Esto normalmente implica:
    - Recrear usuarios y grupos
    - Restaurar bases de datos
    - Volver a subir archivos de sitios web
    - Reconfigurar registros DNS y otros servicios según sea necesario

Se requiere un correo electrónico válido