Hacerlo no es tan difícil y requiere muy poca atención luego de realizado el procedimiento. Eso sí, el tiempo que utilizaremos inicialmente dependerá de tu velocidad de conexión. Podrás elegir cuales arquitecturas replicar y decidir si incluir las fuentes de los paquetes o no.
Mirror Debian
Descarga el script ftpsync.Crea un usuario en la computadora o servidor que utilizarás para hospedar el mirror. Para este ejemplo utilizaremos el usuario “mirror”.
Inicia sesión con ese usuario. Puedes hacerlo con el comando
login mirror
.Copia y descomprime el
ftpsync.tar.gz
en la carpeta /home/ del usuario mirror. Aparecerá una carpeta etc, una bin, y otra log.Cambia el nombre del archivo
etc/ftpsync.conf.sample
a etc/ftpsync.conf
.Edita el archivo
etc/ftpsync.conf
de la siguiente forma:- Descomenta la variable
MIRRORNAME
. - Descomenta la variable
TO
y le vas a poner de valor la ruta donde quieres que se haga el mirror, preferiblemente algo que pueda ver un servidor web como /var/www, para este ejemplo utilizaremos/var/www/debian
. Es importante que esa carpeta pertenezca al usuario que creaste para el mirror. - Descomenta la variable
RSYNC_PATH
y ponle “debian”. - Descomenta la variable
RSYNC_HOST
y ponle “ftp.us.debian.org” o cualquier otro mirror del cual quieras hacer tu mirror, siempre y cuando se le pueda acceder por ftp. - Descomenta la variable
LOGDIR
. - Descomenta la variable
LOG
. - Descomenta la variable
ERRORSONLY
y ponle “false”. - Descomenta la variable
FULLLOGS
y ponle “true”. - Descomenta la variable
ARCH_EXCLUDE
y lista las arquitecturas que quieres excluir. Si quieres excluir las fuentes añades “source”. Por ejemplo, en canaima sólo hacemos mirror de i386, amd64 y las fuentes, por lo que esa variable vale: “alpha arm armel hppa hurd-i386 ia64 kfreebsd-amd64 kfreebsd-i386 m68k mipsel mips powerpc s390 sh sparc”. - Descomenta la variable
TRACE
. - Descomenta la variable
RSYNC
y ponle “rsync”. - Descomenta la variable
RSYNC_OPTIONS
. - Descomenta la variable
RSYNC_OPTIONS1
. - Descomenta la variable
RSYNC_OPTIONS2
.
30 1 * * * mirror /home/mirror/bin/ftpsync sync:all
/home/mirror/bin/ftpsync sync:all
por el usuario mirror todos los días a la 1:30am.Mirror Canaima
Instala el paquete debmirror.aptitude install debmirror
Ejecuta el comando que aparece a continuación. El último parámetro es la ruta donde publicarás el repositorio, la cual debe pertenecer al usuario mirror y estar en un lugar visible para un servidor web como /var/www.
debmirror --debug --progress --verbose --source --host=repositorio.canaima.softwarelibre.gob.ve --section=usuarios --method=rsync --root=:canaima --dist=estable,desarrollo,pruebas --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /var/www/canaima
Creemos un script BASH en la ruta
/home/mirror/mirror-canaima.sh
que tenga el siguiente contenido:#!/bin/bash debmirror --debug --progress --verbose --source --host=repositorio.canaima.softwarelibre.gob.ve --section=usuarios --method=rsync --root=:canaima --dist=estable,desarrollo,pruebas --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /var/www/canaima
30 1 * * * mirror /home/mirror/mirror-canaima.sh
/home/mirror/mirror-canaima.sh
por el usuario mirror todos los días a la 1:30am.¿Cómo usarlos?
Bien, una vez creados los mirrors, tenemos varias formas de usarlos e incluso, compartirlos con nuestros amigos.Para usarlo localmente, podemos sustituir nuestro tradicional mirror debian en nuestro archivo
/etc/apt/sources.list
:deb http://universo.canaima.softwarelibre.gob.ve/ squeeze main contrib non-free
deb file:/var/www/debian main contrib non-free
deb http://repositorio.canaima.softwarelibre.gob.ve/ roraima usuarios
deb file:/var/www/canaima roraima usuarios
Instalemos apache:
aptitude install apache2
deb http://TU-DIRECCIÓN-IP/debian main contrib non-free
deb http://TU-DIRECCIÓN-IP/canaima roraima usuarios