--- title: "Cómo actualizar Ubuntu 22.04 LTS a 24.04 LTS en un servidor" description: "Actualiza un servidor Ubuntu 22.04 LTS a 24.04 LTS con do-release-upgrade: copia de seguridad, puerto SSH de rescate, actualización y revisión final." category: "Sistemas Operativos" language: es source: https://cubepath.com/es/docs/sistemas-operativos/actualizacion-de-ubuntu-lts-a-una-nueva-version updated: 2026-09-25 --- # Cómo actualizar Ubuntu 22.04 LTS a 24.04 LTS en un servidor Ubuntu publica una versión LTS cada dos años con cinco años de soporte estándar, así que tarde o temprano cada servidor tiene que pasar a la siguiente. La herramienta oficial para hacerlo sin reinstalar es `do-release-upgrade`. En este tutorial actualizarás un servidor de Ubuntu 22.04 LTS (Jammy Jellyfish) a Ubuntu 24.04 LTS (Noble Numbat) por SSH, con una copia de seguridad previa, un acceso SSH de rescate y las comprobaciones necesarias al terminar. El mismo procedimiento sirve para pasar de 24.04 a 26.04 LTS cuando Ubuntu la ofrezca. ## Requisitos previos - Un servidor con Ubuntu 22.04 LTS, por ejemplo un VPS de CubePath. - Un usuario no root con privilegios `sudo` y acceso por SSH. - Al menos 5 GB libres en `/` y unos 200 MB libres en `/boot` si es una partición separada. - Una ventana de mantenimiento de una hora aproximadamente: el servidor se reinicia al final y los servicios pueden dejar de responder durante la actualización. - Acceso a la consola web (VNC) del proveedor por si pierdes la conexión SSH. > Importante: solo se admite la actualización entre LTS consecutivas. Desde 20.04 debes pasar primero a 22.04 y después a 24.04; no es posible saltar directamente. ## Paso 1: Hacer una copia de seguridad Una actualización de versión cambia miles de paquetes y, aunque suele salir bien, no se puede deshacer. Antes de empezar, crea un snapshot del servidor desde el panel de tu proveedor si lo permite, y además copia fuera del servidor los datos que no quieres perder: bases de datos, `/etc`, directorios de aplicaciones y `/home`. Por ejemplo, para guardar la configuración del sistema y la lista de paquetes instalados: ```bash sudo tar -czf /root/etc-backup-$(date +%F).tar.gz /etc dpkg --get-selections > ~/paquetes-22.04.txt ``` Si usas MySQL o PostgreSQL, haz también un volcado lógico (`mysqldump` o `pg_dumpall`) y cópialo a otra máquina con `scp` o `rsync`. ## Paso 2: Revisar el software que va a cambiar Ubuntu 24.04 incluye versiones mayores nuevas de muchos componentes. Las más habituales en servidores son: | Componente | 22.04 | 24.04 | |------------|-------|-------| | Kernel | 5.15 | 6.8 | | PHP | 8.1 | 8.3 | | Python | 3.10 | 3.12 | | PostgreSQL | 14 | 16 | | MySQL | 8.0 | 8.0 | | Nginx | 1.18 | 1.24 | | OpenSSL | 3.0 | 3.0 | Revisa que tus aplicaciones sean compatibles con esas versiones. Dos cambios suelen causar sorpresas: - **PHP**: los módulos y pools de `php8.1-fpm` no se migran solos a `php8.3-fpm`. Tendrás que reinstalar las extensiones para 8.3 y copiar tus ajustes de `/etc/php/8.1/` a `/etc/php/8.3/`. - **Python**: los entornos virtuales creados con Python 3.10 dejan de funcionar y hay que recrearlos. Además, `pip install` fuera de un entorno virtual queda bloqueado por la PEP 668. Localiza también los repositorios de terceros (PPAs, Docker, NodeSource), porque la actualización los desactiva: ```bash ls /etc/apt/sources.list.d/ ``` ## Paso 3: Actualizar completamente la versión actual `do-release-upgrade` se niega a continuar si hay actualizaciones pendientes de la versión actual. Instálalas todas: ```bash sudo apt update sudo apt full-upgrade ``` Elimina los paquetes que ya no se necesitan, para reducir lo que habrá que procesar: ```bash sudo apt autoremove --purge ``` Comprueba que no haya paquetes retenidos, porque pueden bloquear la actualización: ```bash apt-mark showhold ``` Si aparece alguno, libéralo con `sudo apt-mark unhold nombre_paquete` o asegúrate de que no impide la actualización. Si se ha instalado un kernel nuevo, reinicia antes de continuar: ```bash [ -f /var/run/reboot-required ] && sudo reboot ``` ## Paso 4: Preparar la herramienta de actualización Instala el paquete que proporciona `do-release-upgrade` (en las imágenes de servidor suele venir ya instalado): ```bash sudo apt install update-manager-core ``` Comprueba que el sistema está configurado para ofrecer versiones LTS: ```bash grep Prompt /etc/update-manager/release-upgrades ``` ```output Prompt=lts ``` Si ves `Prompt=never`, edita el archivo y cambia el valor a `lts`: ```bash sudo nano /etc/update-manager/release-upgrades ``` ```ini [DEFAULT] Prompt=lts ``` ## Paso 5: Abrir el puerto SSH de rescate Cuando se ejecuta por SSH, `do-release-upgrade` arranca un segundo servidor SSH en el puerto `1022` por si la sesión principal se corta mientras se actualiza OpenSSH. Si usas UFW, permítelo de forma temporal: ```bash sudo ufw allow 1022/tcp ``` La herramienta también ejecuta la actualización dentro de `screen`, así que si pierdes la conexión puedes volver a entrar y recuperar la sesión con: ```bash sudo screen -r ``` ## Paso 6: Ejecutar la actualización Lanza la actualización: ```bash sudo do-release-upgrade ``` El proceso tiene varias fases y te pedirá confirmación en algunas de ellas: 1. Avisa de que estás conectado por SSH y del puerto 1022. Responde `y`. 2. Calcula los cambios y muestra un resumen de paquetes que se instalarán, actualizarán y eliminarán. Léelo y confirma con `y`. 3. Descarga e instala los paquetes. Esta es la fase más larga. 4. Pregunta qué hacer con los archivos de configuración que has modificado y que el paquete nuevo también cambia. Si no sabes qué elegir, pulsa `D` para ver las diferencias; en general conviene mantener tu versión (`N`, la opción por defecto) y revisar después el archivo `.dpkg-dist` que se guarda junto a él. 5. Ofrece eliminar los paquetes obsoletos. Responde `y` salvo que dependas de alguno. 6. Pide reiniciar. Responde `y`. > Nota: si ves `No new release found`, Ubuntu aún no ofrece la actualización a la nueva LTS. Las actualizaciones entre LTS se habilitan con la primera versión puntual (por ejemplo, 24.04.1); espera a que esté disponible en lugar de forzarla con la opción `-d`, que es para versiones de desarrollo. ## Paso 7: Verificar el sistema actualizado Tras el reinicio, vuelve a conectarte y confirma la versión: ```bash lsb_release -a ``` ```output No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.3 LTS Release: 24.04 Codename: noble ``` Comprueba que arrancó con el kernel nuevo: ```bash uname -r ``` ```output 6.8.0-85-generic ``` Busca servicios que no hayan arrancado: ```bash systemctl --failed ``` ```output UNIT LOAD ACTIVE SUB DESCRIPTION 0 loaded units listed. ``` Si aparece alguno, revisa su registro con `sudo journalctl -u nombre_servicio -b` y corrígelo antes de dar por terminada la ventana de mantenimiento. Por último, prueba tus aplicaciones: carga la web, conecta a la base de datos y revisa los registros de la aplicación. ## Paso 8: Limpiar y reactivar repositorios Cierra el puerto de rescate que abriste en el paso 5: ```bash sudo ufw delete allow 1022/tcp ``` Instala las actualizaciones posteriores y elimina lo que ya no se usa: ```bash sudo apt update sudo apt full-upgrade sudo apt autoremove --purge ``` Los repositorios de terceros quedaron desactivados (sus entradas aparecen comentadas), y las fuentes oficiales de Ubuntu normalmente pasan al formato deb822 en `/etc/apt/sources.list.d/ubuntu.sources`. Para cada repositorio externo, comprueba que el proveedor publica paquetes para `noble`, cambia `jammy` por `noble` en su archivo y actívalo de nuevo: ```bash grep -r jammy /etc/apt/sources.list.d/ ``` Después de editar los archivos, ejecuta `sudo apt update` y confirma que no hay errores. Si tenías PostgreSQL 14, el clúster antiguo sigue funcionando con los binarios de la versión 14. Cuando hayas comprobado tus copias de seguridad, puedes migrarlo a PostgreSQL 16 con las herramientas de `postgresql-common`: ```bash pg_lsclusters sudo pg_upgradecluster 14 main ``` Tras verificar que el clúster 16 funciona, elimina el antiguo con `sudo pg_dropcluster 14 main`. ## Solución de problemas **`Please install all available updates for your release before upgrading.`** Quedan actualizaciones pendientes. Repite `sudo apt update && sudo apt full-upgrade` y reinicia si se ha instalado un kernel nuevo. **La actualización se interrumpió a mitad (corte de SSH o de red).** Reconéctate por SSH o por el puerto 1022 y recupera la sesión con `sudo screen -r`. Si el proceso ya no existe, termina la configuración de los paquetes a medio instalar: ```bash sudo dpkg --configure -a sudo apt --fix-broken install sudo apt full-upgrade ``` **No hay espacio en `/boot`.** Elimina los kernels antiguos con `sudo apt autoremove --purge` antes de volver a lanzar la actualización. **Un servicio no arranca tras la actualización.** Revisa `sudo journalctl -u nombre_servicio -b` y compara tu configuración con el archivo `.dpkg-dist` o `.ucf-dist` que el paquete dejó al lado. La causa más habitual es una directiva que ya no existe en la nueva versión. ## Conclusión Has actualizado el servidor de Ubuntu 22.04 LTS a 24.04 LTS con `do-release-upgrade`, con un plan de vuelta atrás, acceso SSH de rescate y comprobaciones de servicios, kernel y repositorios. Ubuntu 24.04 recibirá soporte estándar hasta abril de 2029. Como siguientes pasos, puedes activar `unattended-upgrades` para aplicar los parches de seguridad automáticamente, revisar la configuración de UFW del servidor y documentar las incidencias de esta actualización para que la siguiente sea más rápida.