Como parte de su funcionamiento, APT utiliza un archivo que enlista las "fuentes" en donde se encuentran los paquetes. Este archivo es: /etc/apt/sources.list.
El contenido de este archivo, normalmente sigue este formato:
deb http://host/debian distribución sección1 sección2 sección3 deb-src http://host/debian distribución sección1 sección2 sección3
Por supuesto que los renglones arriba mencionados son ficticios y no deberán ser usados. La primera palabra en cada línea, deb o deb-src, indican el tipo del archivo: ya sea que contenga paquetes binarios (deb), esto es, los paquetes pre-compilados que normalmente se usan, o los paquetes fuente (deb-src), que son los códigos originales, más el archivo de control de Debian (.dsc) y el diff.gz que contienen los cambios necesarios para "debianizar" el programa.
Generalmente se encuentra lo siguiente por defecto en el archivo sources.list:
# See sources.list(5) for more information, especialy # Remember that you can only use http, ftp or file URIs # CDROMs are managed through the apt-cdrom tool. deb http://http.us.debian.org/debian stable main contrib non-free deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free deb http://security.debian.org stable/updates main contrib non-free # Uncomment if you want the apt-get source function to work #deb-src http://http.us.debian.org/debian stable main contrib non-free #deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
Éstas son las líneas necesarias para una instalación básica de Debian. La primer línea deb apunta al archivo en el servidor oficial, la segunda línea apunta hacia el archivo del servidor non-US y la tercera línea apunta hacia el archivo del servidor de actualizaciones de seguridad.
Las dos últimas líneas están deshabilitadas (con un "#" al inicio), así que apt-get las ignora. Éstas son las líneas de deb-src, esto es, apuntan hacia los paquetes fuente de Debian. Si frecuentemente descarga paquetes fuente para probar o recompilar, habilítelas (borrando el "#" al inicio de la línea).
El archivo /etc/apt/sources.list puede contener varios tipos de líneas. APT sabe como interpretar líneas del tipo http, ftp, file (archivos locales, p.e., un directorio que contiene un CD-ROM) y ssh, según mis conocimientos.
No olvide ejecutar el comando apt-get update después de modificar el archivo /etc/apt/sources.list. Debe hacer esto para permitir a APT obtener la lista de paquetes de las fuentes que especificó.
Algunas veces se pueden llegar a tener muchos paquetes .deb, los cuales le gustaría instalar utilizando APT para que las dependencias fueran resueltas automáticamente.
Para hacer esto, cree un directorio y coloque los .debs que quiera señalar en el. Por ejemplo:
# mkdir /root/debs
Usted puede modificar la lista de definiciones en el archivo de control de paquetes para su depósito con un archivo override. Dentro de este archivo se pueden definir opciones para descartar las que vienen por defecto en el paquete. Por ejemplo:
touch archivo
Dentro de este archivo se pueden definir opciones para descartar las que vienen por defecto en el paquete. Por ejemplo:
paquete prioridad sección
Paquete es el nombre del paquete o programa, la prioridad puede ser baja, media
o alta y sección es la sección a donde pertenece. El nombre de archivo no
importa, deberá pasarlo como argumento después para
dbpkg-scanpackages
. Si no desea escribir un archivo
override entonces utilice /dev/null
cuando ejecute
dbpkg-scanpackages
.
Continuando en el directorio /root se hace lo siguiente:
# dpkg-scanpackages debs archivo | gzip > debs/Packages.gz
En la línea anterior, archivo es el archivo de
override, el comando genera un archivo
debs/Packages.gz
el cual contiene información acerca de los
paquetes, la cual es utilizada por APT. Para utilizar los paquetes, finalmente
agregue:
deb file:/root debs/
Después de eso, utilice los comandos de APT como siempre. También podría
generar un deposito de fuentes de paquetes. Para hacer eso, haga exactamente
lo mismo, pero recuerde que necesita tener los archivos
.orig.tar.gz, .dsc y .diff.gz en el
directorio y cambie Sources.gz por Packages.gz. El
programa utilizado también es diferente. Es el dpkg-scansources
.
El comando completo se vería así:
# dpkg-scansources debs | gzip > debs/Sources.gz
Observe que dpkg-scansources
no necesita un archivo
override. La línea de sources.list es:
deb-src file:/root debs/
Una duda frecuente, principalmente entre los usuarios novatos es: "¿Cuál servidor Debian debo incluir en el archivo sources.list?". Hay muchas formas de decidir esto. Los expertos podrían tener un script que determine el tiempo de un ping entre los distintos servidores. Pero hay un programa que hace esto por nosotros: netselect.
Para instalar netselect, hágalo así:
# apt-get install netselect
Al ejecutarlo sin algún parámetro muestra la ayuda. Ejecutándolo con una lista de servidores separada por un espacio, regresará una lista con la puntuación del host. Esta lista considera el tiempo de ping y el número de "saltos" (servidores por los cuales una petición de red debe pasar para alcanzar su destino) y es inversamente proporcional a la velocidad de descarga (la menor es la mejor). El servidor que regresa es aquel que tiene una puntuación menor (se puede ver la lista completa agregando la opción -vv). Ejemplo:
# netselect ftp.debian.org http.us.debian.org ftp.at.debian.org download.unesp.br ftp.debian.org.br 365 ftp.debian.org.br #
Esto significa que, de los servidores incluidos como parámetros en netselect, ftp.debian.org.br fue el mejor, con una puntuación de 365. (Atención, la puntuación depende de la localización geográfica, la topología de red, la distancia entre la computadora y los servidores, por lo tanto, dependiendo de la computadora en la que se ejecute el comando podría ser otro el mejor servidor).
Ahora agregue el servidor más rápido encontrado por netselect en el archivo /etc/apt/sources.list ( regresa a El archivo /etc/apt/sources.list, Sección 2.1) sigue los pasos en Trabajando con paquetes, Capítulo 3.
Nota: la lista de los servidores se puede encontrar en el
archivo:http://www.debian.org/mirror/mirrors_full
.
Iniciando con la versión 0.3, el paquete netselect incluye el script netselect-apt, el cual realiza automáticamente el proceso mencionado arriba. Sólo introduzca el árbol de la distribución como parámetro (el cual, por defecto es "stable") y el archivo sources.list será generado con los mejores servidores para main y non-US y será guardado en el directorio actual. El siguiente ejemplo genera un archivo sources.list de una distribución estable
# ls sources.list ls: sources.list: File or directory not found # netselect-apt stable (...) # ls -l sources.list sources.list #
Recuerde: el archivo sources.list se crea en el directorio actual, y debe moverse al directorio /etc/apt .
Después, siga los pasos de Trabajando con paquetes, Capítulo 3.
Si prefiere utilizar el CD-ROM para instalar los paquetes o para actualizar su sistema con APT, lo puede agregar a su archivo sources.list. Para hacerlo, puede utilizar el programa apt-cdrom así:
# apt-cdrom add
con el CD-ROM de Debian en la unidad. Esta instrucción montará el CD-ROM, y si es un CD válido de Debian buscará la información de los paquetes en el CD. Si la configuración de su unidad de CD-ROM es inusual, tiene las siguientes opciones:
-h - program help -d directory - CD-ROM mount point -r - Rename a recognized CD-ROM -m - No mounting -f - Fast mode, don't check package files -a - Thorough scan mode
Por ejemplo:
# apt-cdrom -d /home/kov/mycdrom add
También puede identificar el CD-ROM sin agregarlo a su lista:
# apt-cdrom ident
Note que este programa sólo funcionará si el CD-ROM está configurado adecuadamente en el archivo /etc/fstab de su sistema.
APT HOWTO
1.8.4 - April 2003kov@debian.org
h.mora@melix.com.mx