apt-cacher hace de cache para las descargas tipo apt en una red.
La configuración expuesta está pensada para ser totalmente funcional modificando mínimamente los parámetros.
Instalación
sudo apt-get install apt-cacher
Configuración del servicio
apt-cacher.conf
Es el archivo de configuración básico, y está en /etc/apt-cacher/
Parámetros básicos
daemon_port=3142Indica el puerto para acceder al servicio. Por defecto, 3142-
allowed_hosts=*Indica los posibles clientes. Por defecto, todos los host tienen permiso de acceder a tu repositorio cache. Puedes cambiar este valor si quieres permitir que sólo ciertos host accedan a él. Por ejemplo, permitir el acceso a mi LAN 192.168.1.0/24 y al localhost (127.0.0.1 y 127.0.1.1), y quedaría así:
allowed_hosts=192.168.1.0/24, 127.0.1.1ya que 127.0.0.1 siempre tiene permiso, no es necesario añadir 127.0.0.1
No es necesario si se controla con un firewall las conexiones entrantes.
expire_hours=0apt-cacher pueden utilizar diferentes métodos para decidir si las listas de paquetes necesita ser actualizadas.
- buscando a la edad de los archivos de caché
- obteneniendo la cabecera HTTP del servidor y comparandola con los datos en caché. Este método es más fiable y evita desincronización de los datos y los ficheros de índice, pero necesita unos cuantos bytes de transferencia desde el servidor cada vez que alguien solicita los archivos ( “apt-get update”).
Activando apt-cacher al comienzo
Para arrancar apt-cacher necesitamos activarlo desde /etc/default/apt-cacher. Abre /etc/default/apt-cacher y configura AUTOSTART a 1:
AUTOSTART=1Ahora reinicia apt-cacher:
sudo /etc/init.d/apt-cacher restart
Importando paquetes
Existe un script llamado apt-cacher-import.pl en /usr/share/apt-cacher/, junto a otros también utiles.
Para importar archivos .deb desde /var/cache/apt/archives al repositorio de to apt-cacher ejecuta:
Para importar archivos .deb desde /var/cache/apt/archives al repositorio de to apt-cacher ejecuta:
sudo /usr/share/apt-cacher/apt-cacher-import.pl /var/cache/apt/archivesAhora, en el directorio /var/cache/apt-cacher/packages/ habrá unos cuantos paquetes.
Configuración de los clientes
Cuando hablamos de clientes, incluimos al servidor, ya que el también será cliente de este servicio.
Existen dos métodos.
Existen dos métodos.
1. Método de sources.list
Hay que retocar cada entrada http de /etc/apt/sources.list para añadir el apt-cacher.
Sería añadir al principio de la dirección:3142/apt-cacher/
Por ejemplo :
Sería añadir al principio de la dirección
Por ejemplo :
deb http://archive.ubuntu.com/ubuntu/ hardy main restricted universe multiversea
deb http://repository-cache:3142/apt-cacher/archive.ubuntu.com/ubuntu/ edgy main restricted universe multiverse
2. Método de apt.conf
Es el que requiere menos cambios, y permite dejar el source.list limpio.
En /etc/apt/apt.conf añadimos o modificamos :
Cabe destacar, que si por algún motivo quisieramos realizar una descarga normal, sólo tendríamos que comentar la linea donde indicamos el proxy.
En /etc/apt/apt.conf añadimos o modificamos :
Acquire { // HTTP method configuration http { Proxy "http://La última vez que probamos este método, el servidor no tenia este archivo, así que lo creamos.:3142"; Timeout "60"; }; };
Cabe destacar, que si por algún motivo quisieramos realizar una descarga normal, sólo tendríamos que comentar la linea donde indicamos el proxy.
Obteniendo el informe
apt-cacher generará un informe de uso diario de la cache. Se puede consultar en:
http://repository-cache:3142/reportPara regenerar manualmente el informe, ejecuta:
sudo /usr/share/apt-cacher/apt-cacher-report.plSe puede deshabilitar en el archivo apt-cacher.conf
Errores conocidos
Del tipo http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=478122. Ejemplo :
Use of uninitialized value in concatenation (.) or string at /usr/share/apt-cacher/apt-cacher-lib.pl line 138, <$listpipe> line 121229.