Las listas de paquetes de Debian se actualizan desde los repositorios definidos en la carpeta /etc/apt/
, principalmente, en el fichero /etc/apt/sources.list
. En él, se suelen encontrar la direcciones web (repositorios) que estaremos utilizando, uno por línea. Algo similar a lo siguiente:
deb http://deb.debian.org/debian bullseye main
deb http://deb.debian.org/debian bullseye-updates main
deb http://security.debian.org/debian-security bullseye-security main
Observa que donde aparece la palabra clave bullseye
está indicando la versión del sistema operativo. En el caso de Debian, cada versión del sistema operativo es definida por una palabra clave que es un personaje de Toy Story:
- Debian 7:
wheezy
(2013) - Debian 8:
jessie
(2015) - Debian 9:
stretch
(2017) - Debian 10:
buster
(2019) - Debian 11:
bullseye
(2021) - Debian 12:
bookworm
(2023) - Debian 13:
trixie
(2025)
Actualización de Debian
Sabiendo esto, es muy sencillo configurar los repositorios para actualizar nuestro sistema a las futuras versiones. Imaginemos que tenemos un sistema con Debian 11 (bullseye). Para actualizarlo a Debian 12 (bookworm), podemos hacer lo siguiente:
sed -i "s/bullseye/bookworm/g" /etc/apt/sources.list
Con sed
y una expresión regular, hemos actualizado nuestro fichero, reemplazado bullseye
por bookworm
. Por lo tanto, nuestro fichero /etc/apt/sources.list
debería ser ahora el siguiente:
deb http://deb.debian.org/debian bookworm main
deb http://deb.debian.org/debian bookworm-updates main
deb http://security.debian.org/debian-security bookworm-security main
Luego, con un sudo apt update && sudo apt upgrade
mantedremos la distribución y todos sus paquetes actualizados.
Ampliación de repositorios
Comentar también que como habrás visto anteriormente, por defecto, debian incorpora tres repositorios:
- Su repositorio principal:
bookworm
- Su repositorio de actualizaciones por versión:
bookworm-updates
- Su repositorio de actualizaciones de seguridad:
bookworm-security
Cada uno de estos repositorios sólo indica main
. Podemos ampliar estos repositorios para tener más paquetes a nuestra disposición. Veamos un fichero /etc/apt/sources.list
ampliado:
deb http://deb.debian.org/debian bookworm main contrib non-free
deb http://deb.debian.org/debian bookworm-updates main contrib non-free
deb http://security.debian.org/debian-security bookworm-security main contrib non-free
deb http://deb.debian.org/debian bookworm-backports main contrib non-free
Si nos fijamos, cada repositorio (cada línea) tiene las palabras clave contrib
y non-free
. Esto hace que dichos repositorios no sólo muestren los paquetes generales, sino también los que son contribuciones de la comunidad (contrib) o los paquetes privativos (non-free).
En la última línea se define un repositorio adicional bookworm-backports
. Este es el llamado repositorio de retroimportaciones. Se trata de paquetes considerados inestables, pero mucho más actualizados que otros, por si se desea tener versiones más modernas que las versiones estables consideradas por Debian.
Repositorios adicionales
En la carpeta de configuración de apt
encontrarás también la carpeta /etc/apt/sources.list.d/
. Esta carpeta normalmente viene vacía, pero puede contener algunos archivos adicionales si has realizado instalaciones.
Por ejemplo, podríamos tener el fichero /etc/apt/sources.list.d/google-chrome.list
, que contiene 3 líneas:
### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main
Se trata de repositorios adicionales particulares, divididos en archivos separados para ser más fácil de gestionar por herramientas automáticas. Muchos sistemas como node
, docker
u otros, utilizan esta carpeta para añadir sus propios repositorios de actualizaciones y que puedas actualizarlos fácilmente desde apt
.
Nuevo formato debian.sources
Es posible que te hayas encontrado que el archivo /etc/apt/sources.list
no existe en tu sistema, y sin embargo apt
funciona correctamente. Nuevas versiones están utilizando un nuevo formato en el que, en lugar de utilizar el /etc/apt/sources.list
, incluyen un fichero /etc/apt/sources.list.d/debian.sources
con el siguiente contenido:
# http://snapshot.debian.org/archive/debian/20241016T000000Z
URIs: http://deb.debian.org/debian
Suites: bookworm bookworm-updates
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
# http://snapshot.debian.org/archive/debian-security/20241016T000000Z
URIs: http://deb.debian.org/debian-security
Suites: bookworm-security
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Como ves, se trata de la información que teníamos en el archivo /etc/apt/sources.list
, sólo que distribuido de diferente forma. En este caso, si quisieramos ampliar los componentes, podríamos añadir contrib
, non-free
y non-free-firmware
a la lista de componentes.