Actualizando a Debian 13


De nuevo la actualización de Debian suele crear algunos problemas esta vez he tardado 6 meses en actualizar todos mis servidores. Aquí de nuevo apunto todos los detalles para minimizar los problemas.

Todos los detalles están en las notas de la versión de Debian 13 y en el listado de problemas conocidos en los siguientes enlaces:

Advertencia

Si vas a actualizar una RaspberryPI no sigas las instrucciones de este documento. He preparado uno específico, esta actualización en Raspios no funciona por problemas de dependencias.

Aquí dejo un listado con notas generales sobre las pruebas que he hecho:

Muestro el listado de programas que he tenido que ir arreglando tras la actualización. Además incluyo una algunas anotaciones sobre cada problema.

  • Apache: En algunos servidores se me ha cambiado el modo de ejecución, si tienes php cuidado que no se cambie a Prefork, suelo tenerlo en "Event", se comprueba mediante apachectl -V | grep -i mpm
  • Docevot: Este es grave, la configuración es incompatible, igual tienes que rehacerla

Actualizando a Debian 13

Antes de empezar asegurarse de tener todo Actualizado con:

apt update && apt upgrade -y
apt --purge autoremove

Ahora toca cambiar las fuentes a Debian 13 - Trixie en /etc/apt/sources.list, fíjate que para la actualización he quitado los repositorios proposed-updates y backports para evitar problemas de dependencias. No es recomendable actualizar con estos repositorios activos. Además, revisa todo esto antes de empezar la actualización:

  • No tener ningún fichero en /etc/apt/preferences.d/ con pinning activo
  • No tener activa otras fuentes de terceros en /etc/apt/sources.list.d/ o en debian.sources

Tras ello el contenido de /etc/apt/sources.list debe ser el siguiente:

deb https://ftp.debian.org/debian/ trixie contrib main non-free non-free-firmware
deb https://ftp.debian.org/debian/ trixie-updates contrib main non-free non-free-firmware
deb https://security.debian.org/debian-security/ trixie-security contrib main non-free non-free-firmware

# deb https://ftp.debian.org/debian/ trixie-proposed-updates contrib main non-free non-free-firmware
# deb https://ftp.debian.org/debian/ trixie-backports contrib main non-free non-free-firmware

Nota

Los ficheros de fuentes han cambiado de formato y se deben cambiar (modernizar) posteriormente a la actualización. No olvides este paso para evitar futuros problemas

La actualización ya se hace mediante el mismo procedimiento que en Debian 12, en dos pasos:

apt update
apt upgrade --without-new-pkgs
apt full-upgrade

Al final se debe hacer limpieza, cuidado con el segundo comando que si no tienes las dependencias bien resueltas puede eliminar configuraciones necesarias y romper algunos servicios.

apt --purge autoremove
apt purge ?config-files

Note olvides de modernizar las fuentes APT siguiendo las siguientes instrucciones.

Modernizando las fuentes APT semi-automáticamente

Las fuentes de APT de la nueva versión se pueden obtener de una imagen oficial de Debian 13, pero se incluye un método semi-automático para modernizarlas. Presento las 2 opciones:

Opción 1: Ejecutar el comando:

apt modernize-sources

Opción 2: Manualmente consiste en:

  1. Copiar el contenido indicado en el fichero /etc/apt/sources.list.d/debian.sources
  2. Eliminar el fichero /etc/apt/sources.list .
Types: deb
URIs: https://ftp.debian.org/debian/
Suites: trixie
Components: contrib main non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg


Types: deb
URIs: https://ftp.debian.org/debian/
Suites: trixie-updates
Components: contrib main non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg


Types: deb
URIs: https://security.debian.org/debian-security/
Suites: trixie-security
Components: contrib main non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Problema cloud

En uno de los servidores se paró la actualización con lo siguiente: .. code-block:: text

Configurando grub-cloud-amd64 (0.1.1) ... Instalando para plataforma i386-pc. mdadm: /dev/md does not appear to be an md device grub-install: error: error en ioctl RAID_VERSION: Función ioctl no apropiada para el dispositivo. dpkg: error al procesar el paquete grub-cloud-amd64 (--configure): el subproceso instalado paquete grub-cloud-amd64 script post-installation devolvió el código de salida de error 1 e encontraron errores al procesar: grub-cloud-amd64 needrestart is being skipped since dpkg has failed E: Sub-process /usr/bin/dpkg returned an error code (1)

Solución:

Cuidado con no dejar el sistema sin arranque, revisa el arranque y cuidado com mdadm si tienes RAID:

  1. Revisar si es EFI o BIOS.
  2. Eliminar el paquete problemático grub-cloud-amd64
  3. Reinstalar grub

Lo siguiente funcionó en mi caso:

apt purge grub-cloud-amd64
update-grub
grub-install /dev/nvme0n1 # o el disco que corresponda
#Debian Linux