apt-spy: Detectar el mejor mirror de donde descargar nuestros paquetes | Algo de Linux

jueves, 6 de febrero de 2014

apt-spy: Detectar el mejor mirror de donde descargar nuestros paquetes

Para crear nuestro mirror de Debian estamos usando apt-spy, que nos permite seleccionar el mejor mirror en función de su respuesta y velocidad de descarga en kB/s.

Instalar apt-spy en Debian es muy sencillo porque se encuentra en los repositorios:

# apt-get install apt-spy

Una vez instalado, podemos realizar una búsqueda de espejos:
  • Por región: Africa, Asia, Europe, North-America, Oceania, South-America. 
  • Por países: Indicando la abreviatura del país.
  • Especificando una lista de repositorios en un fichero.
Si queréis usar las abreviaturas de los países aquí tenéis el listado completo:

Equivalencias de abreviaturas por países:
AT Austria
AU Australia
BE Belgium
BG Bulgaria
BR Brazil
BY Belarus
CA Canada
CH Switzerland
CL Chile
CN China
CR Costa Rica
CZ Czech Republic
DE Germany
DK Denmark
EE Estonia
ES Spain
FI Finland
FR France
GB United Kingdom
GR Greece
HK Hong Kong
HR Croatia
HU Hungary
ID Indonesia
IE Ireland
IL Israel
IN India
IS Iceland
IT Italy
JP Japan
KR Korea
LT  Lithuania
LU  Luxembourg
LV  Latvia
MX Mexico
NI   Nicaragua
NL Netherlands
NO Norway
NZ New ZealandAT Austria
AU Australia
BE Belgium
BG Bulgaria
BR Brazil
BY Belarus
CA Canada
CH Switzerland
CL Chile
CN China
CR Costa Rica
CZ Czech Republic
DE Germany
DK Denmark
EE Estonia
ES Spain
FI Finland
FR France
GB United Kingdom
GR Greece
PL Poland
PT Portugal
RO Romania
RU Russia
SE Sweden
SG Singapore
SI  Slovenia
SK Slovakia
TH Thailand
TR Turkey
TW Taiwan
UA Ukraine
US United States
ZA South Africa

apt-spy tiene unos cuantos parámetros. De todos ellos tan sólo vamos a mencionar los más utilizados. El resto podéis consultarlos en la ayuda:

Parámetros:

  • update: Nos permite actualizar la lista de réplicas.
  • -d "distribución": Distribución para la que queremos hacer la comprobación.
  • -a "región": Para indicar una región en concreto.
  • -s "pais": Para especificar la lista de réplicas de un país.
  • -i "archivoorigen": Archivo de donde tomar la lista de repostorios.
  • -o "archivosources": Archivo donde guardar el sources.list generado.
  • -w "archivolistamirrors": Archivo donde guardar la lista de mirrors.
  • -n numero: Número del top de servidores a escribir en el fichero indicado mediante -w.
  • -t "segundos": Tiempo de comprobación (por defecto 15 segundos).

Como nosotros sólo usamos apt-mirror para ver cuál es el mejor mirror y no nos interesa el sources.list generado, usamos el parámetro -o para mandarlo a un archivo en /tmp que no usamos.

Veamos algunos ejemplos de uso de apt-spy:

Imaginemos que quiero actualizar la lista de mirrors. Tan sólo tendría que ejecutar:
# apt-spy update

Ahora supongamos que quiero obtener el mirror más rápido en este momento de España:
# apt-spy -d wheezy -s ES

El comando anterior obtendrá el mirror de Debian Wheezy más rápido en este momento y creará un
fichero sources.list que almacenará en /etc/apt/sources.list.d/apt-spy.list
Esto es importante destacarlo porque ese mirror será utilizado por el gestor de paquetes. Si quisiéramos descartarlo podemos usar el parámetro -o para enviarlo a otro lugar donde el sistema de paquetes no lo use:
# apt-spy -d wheezy -s ES -o /tmp/kk

El tiempo que  por defecto apt-spy chequea cada mirror es de 15 segundos. Si queremos aumentarlo o disminuirlo, no tenemos más que utilizar el parámetro -t:
# apt-spy -d wheezy -t 5 -s ES -o /tmp/kk

El comando anterior chequearía cada mirror durante 5 segundos, en lugar de los 15 que dedica habitualmente por defecto.

Si en lugar de testear los mirrors de un país, queremos chequear los de una región, usaremos el parámetro -a:
# apt-spy -d wheezy -t 5 -a Europe -o /tmp/kk

Si tenemos un fichero con una lista de mirrors (podemos obtenerlo usando el comando), podemos indicarle a apt-spy que examine los mirrors de este fichero mediante el parámetro -i:
# apt-spy -d wheezy -t 5 -a Europe -o /tmp/kk -w /tmp/listamirrors.ordenados -i /tmp/listamirrors

Si usamos el parámetro -w para generar un fichero con la lista de mirrors, puede que nos interese obtener tan sólo un número determinado de resultados. Por ejemplo, supongamos que de la lista de mirrors que tenemos tan sólo nos interesa quedarnos con los 2 primeros:
indicarle a apt-spy que examine los mirrors de este fichero mediante el parámetro -i:
# apt-spy -d wheezy -t 5 -a Europe -o /tmp/kk -w /tmp/listamirrors.ordenados -n 2 -i /tmp/listamirrors

Publicado por primera vez en http://enavas.blogspot.com.es