Tabla de Contenidos
Para Impacientes
Agregando repositorios para debian bullseye desde servidores en internet:
cat << EOF | tee /etc/apt/sources.list #Repositorio principal deb http://deb.debian.org/debian/ bullseye main non-free contrib deb-src http://deb.debian.org/debian/ bullseye main non-free contrib #Repositorio de seguridad deb https://deb.debian.org/debian-security bullseye-security main contrib deb-src https://deb.debian.org/debian-security bullseye-security main contrib # bullseye-updates, previamente conocido como 'volatile' deb http://deb.debian.org/debian/ bullseye-updates main contrib non-free deb-src http://deb.debian.org/debian/ bullseye-updates main contrib non-free #Repositorio de backports deb http://deb.debian.org/debian/ bullseye-backports main contrib non-free deb-src http://deb.debian.org/debian/ bullseye-backports main contrib non-free #Repositorio de actualizaciones propuestas deb http://deb.debian.org/debian/ bullseye-proposed-updates main contrib non-free deb-src http://deb.debian.org/debian/ bullseye-proposed-updates main contrib non-free EOF
Actualizar la lista de paquetes
apt update
Actulizar los paquetes
apt upgrade
apt upgrade -t bullseye-backports
Generalidades
Apt descarga los paquetes de mas de un repositorio de paquetes y los instala en tu computadora.
Un repositorio, por lo general, es un servidor en red como los repositorios de Debian en su versión estable. Un repositorio, además de un servidor en red, también acepta directorios de almacenamiento local o discos CD/DVD.
Los repositorios (fuentes de paquetes) configurados en tu maquina afectan:
- Que software está disponible para descarga
- Que versiones de paquetes están disponibles
- Quien empaqueta el software
Orígenes de paquetes
- DebianStable: Repositorio oficial de Debian para la versión estable actual de debian
- StableProposedUpdates: Repositorio oficial de Debian para la siguiente liberación menor de Debian estable (seguridad y parches importantes cada dos meses aprox)
- StableUpdates: Repositorio oficial de Debian para cambios que no pueden esperar al próximo punto de liberación, también se agregan paquetes a StableProposedUpdates para la inclusión en la próxima liberación
- DebianSecurity: Repositorio oficial de Debian para actualizaciones de seguridad frecuentes
- DebianBackports: Paquetes mas recientes, compatible con Debian estable
- DebianTesting: Estado actual de desarrollo para la siguiente versión estable de Debian
- DebianUnstable: Versión de debian en desarrollo que contiene los paquetes mas nuevos
- DebianExperimental: Versión de desarrollo de Debian que contiene paquetes en estado experimental/alpha/sinprueba
Archivos y Carpetas
El archvivo de configuración principal esta ubicado en /etc/apt/sources.list
. Puedes editar este archivo (como usuario root) utilizando un editor de texto.
Para agregar fuentes de software personalizadas, se recomienda crear archivos separados bajo la carpeta /etc/apt/sources.list.d/
.
Estructura
Las entradas en el archivo sources.list
normalmente sigue este formato:
deb URI distribution componente1 componente2 componente3 deb-src URI distribution componente1 componente2 componente3
Dónde:
Tipo de archivo
: Es la primera palabra en cada entradadeb
ódeb-src
. deb indica que el paquetes es binario y deb-src que el paquete contiene el código fuente del programa.La URI del repositorio
: Indica desde donde va a descargar los paquetes. ALgunas URIs puede ser :file:/ruta/hacia/archivos/debian
Distribución
: La distribución puede ser tanto el nombre código/alias de la versión ( stretch, buster, bullseye, bookworm, sid) ó la clase de la versión (oldoldstable, oldstable, stable, testing, unstable) respectivamente. Evite usarstable
en el sources.list por que puede resultar en sistemas rotos sobre todo cuando se libera una nueva versión estable de debian.Componente
: Consiste en grupos de software categorizados de acuerdo a las Directrices de Software Libre de Debian (DFSG) donde existen tres categorías:main
cosiste en paquetes que cumplen con las directrices DFSG, lo cuales no dependen en software fuera de esta categoría.contrib
contiene software que cumplen con las directrices DFSG, pero que sus dependencias no estan en la categoria main(posiblemente empaquetado en sección Debian non-free).non-free
contiene software que no cumplen con las directrices DFSG. Habitualmente software no libre.
Esquemas de URI soportadas
http
: Especifica un servidor HTTP para un repositorio y era el método mas utilizado. Esta URI puede incluir información de login en formatohttp://usuario:clave@servidor:puerto/
aunque esta forma de autenticación es insegura.https
: Especifica un servidor HTTPS para un repositorio y se utiliza de manera similar al esquema http.mirror
: Este esquema especifica el lugar de un mirrorlist. Por defecto el esquema utilizado para el lugar es http pero se pueden utilizar otros utilizando el esquemamirror+esquema
. El mirrorlist en si mismo puede tener muchas URIs de espejos para que el cliente APT elija una.file
: Este esquema permite utilizar un directorio arbitrario de nuestro sistema de almacenamiento como un espejo. Es muy útil para servidores NFS.cdrom
: Este esquema permite a APT utilizar un CD-ROM, DVD o una memoria USB para fuente. Utiliza elapt-cdrom
para crear esta entrada en elsources.list
.ftp
: Este esquema espeficíca un servidor FTP. El uso de este esquema esta en descenso en favor de los esquemas http y https.copy
: Este esquema es idéntico al esquemafile
excepto que los paquetes se copian al directorio cache (/var/cache/apt/
) en vez utilizarlos directamente.rsh/ssh
: Este método invoca RSH/SSH para conectarse a un servidor remoto y acceder a los archivo utilizando un usuario del sistema. Se recomienda configurar las llaves SSH previamente.
Programas para editar
Existen varios programas para editar los repositorios de debian pero los podemos clasificar en dos categorias:
- En modo linea de comandos
- En modo gráfico
Modo Linea de comandos
Para ello debemos utilizar nuestro editor de texto favorito en linea de comandos, como por ejemplo nano, agregar las entradas, guardar y actualizar. Para instalar, quitar y actualizar paquetes se pueden utilizar tres herramientas muy similares:
apt-get
: Herramienta antigua.apt
: Herramienta mas nueva que soluciona algunos vacios de diseño de apt, y es la que se recomienda usar.aptitude
: Herramienta que cuenta con interfaz grafica en CLI para administrar los paquetes.
Modo gráfico
Entre ellos se encuentra el programas:
synaptic
: Programa gráfico para manipular programas en debian.software-properties-gtk
: Programa para manipular los repositorios de debian, y que se puede llamar desde synaptic.gdebi
: Programa para instalar paquetes.deb
- Algunos escritorios gráficos pueden tener su propia interfáz gráfica para administrar programas como el
gnome-software
que ayuda a instalar fácilmente los programas.
Configuración
CLI
Para poder agregar entradas desde la linea de comandos, como usuario root:
Editamos el archivos sources.list
nano /etc/apt/sources.list
Agregamos las lineas
#Repositorio principal deb http://deb.debian.org/debian/ bullseye main non-free contrib deb-src http://deb.debian.org/debian/ bullseye main non-free contrib #Repositorio de seguridad deb https://deb.debian.org/debian-security bullseye-security main contrib deb-src https://deb.debian.org/debian-security bullseye-security main contrib
Luego guardamos con la combinación de teclas Ctrl+x
, presionamos la letra y
NOTA:Para estos repositorios se ha utilizado el CDN http://deb.debian.org/ para los servidores de repositorios de debian que utiliza registros SRV en el DNS para redirigir a algun servidor oficial, pero pueden utilizarse otros servidores en vez.
Actualizamos la lista
Actualizamos la lista de paquetes que podemos instalar en nuestra compoutadora con
apt update
Instalamos programas
Luego solo nos queda instalar programas como por ejemplo
apt install tree
Repositorios adicionales
Aca una lista de repositorios adicionales para software que pueden necesitar (Utilicense bajo su propio riesgo):
#Repositorio para debian multimedia deb http://www.deb-multimedia.org bullseye main non-free deb-src http://www.deb-multimedia.org bullseye main non-free # Java bellsoft deb [arch=amd64] https://apt.bell-sw.com/ stable main # PHP Sury deb https://packages.sury.org/php bullseye main # VirtualBox deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian bullseye contrib # Mega Sync deb https://mega.nz/linux/repo/Debian_11/ ./ #Visual Studio Code deb [arch=amd64,arm64,armhf] http://packages.microsoft.com/repos/code stable main
Existen otros repositorios adicionales en https://wiki.debian.org/DebianRepository/Unofficial
Errores Apt Key
Si al hacer apt update
les da un error de :
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY LLAVEQUEAPARECE1 NO_PUBKEY LLAVEQUEAPARECE2 NO_PUBKEY LLAVEQUEAPARECE3
Reading package lists... Done
Pueden solventar ejecutando: <code bash> apt-key adv –keyserver keyserver.ubuntu.com –recv-keys LLAVEQUEAPARECE </bash>