Tema:
Repositorios Locales para debian y Canaima
Instalar debmirror y apache2
aptitude install debmirror apache2
script repositorio.sh
debmirror --debug --progress --verbose --nosource --host=debian.unesr.edu.ve --section=main,contrib,non-free --method=rsync --root=:debian --dist=etch,lenny --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /home/debian
script seguridad.sh
debmirror --debug --progress --verbose --nosource --host=security.debian.org --section=main,contrib,non-free --method=rsync --root=:debian-security --dist=etch/updates,stable/updates,lenny/updates --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /home/seguridad
script multimedia.sh
debmirror --debug --progress --verbose --nosource --host=www.debian-multimedia.org --section=main --method=rsync --root=:debian --dist=lenny --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /home/debian-multimedia
Se deberan crear los directorios
/home/debian
/home/debian-multimedia
/home/seguridad
/home/canaima-repo
/home/canaima-seguridad
/home/universo
Luego realizar los enlaces simbolicos para apache desde la raiz www hasta donde se encuentren los repositorios
cd /var/www
ln -s debian /home/debian/
ln -s seguridad /home/seguridad/
ln -s multimedia /home/debian-multimedia/
ln -s canaima-repo /home/canaima-repo/
ln -s canaima-seguridad /home/canaima-seguridad/
ln -s canaima-universo /home/universo/
Repositorios para Canaima
debmirror --debug --progress --verbose --nosource --host=universo.canaima.softwarelibre.gob.ve --section=usuarios,servidores --method=rsync --root=:canaima --dist=estable --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/universo
debmirror --debug --progress --verbose --nosource --host=seguridad.canaima.softwarelibre.gob.ve --section=usuarios,servidores --method=rsync --root=:canaima --dist=estable --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/canaima-seguridad
debmirror --debug --progress --verbose --nosource --host=repositorio.canaima.softwarelibre.gob.ve --section=usuarios,servidores --method=rsync --root=:canaima --dist=estable --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/canaima-repo
Listo!!, solo faltaria reiniciar apache y colocar en /etc/apt/sources.list lo siguiente:
deb http://localhost/debian lenny main contrib non-free
deb http://localhost/seguridad lenny/updates main contrib non-free
deb http://localhost/multimedia lenny/updates main contrib non-free
Para los demas equipos de la red bastaria con cambiar localhost por la IP o el nombre DNS del servidor, asi mismo, se deben instalar en los equipos de la red los paquetes: debian-archive-keyring y debian-multimedia-keyring, que son la sllaves publicas de los repositorios oficiales. Por ultimo, no olviden crear un crontab para que el servidor se actualice. Se puede cambiar la linea "lenny" por stable o el que se halla colocado para la descarga Espero les sirva
Cron
30 20 * * * /etc/webmin/cron/tempdelete.pl
00 20 * * * /root/repo/multimedia
00 18 * * * /root/repo/seguridad
00 21 * * * /root/repo/repos
00 22 * * * /root/repo/canaima-seguridad
00 23 * * * /root/repo/canaima-repo
10 20 * * * /root/repo/canaima-universo
Por ultimo, si quieren que su repositorio actualice a otros repositorios o quisieran llevarselo en un laptop. deberan instalar rsync y configurarlo de la forma siguiente:
:~# vim /etc/rsyncd.conf
use chroot = yes
max connections = 4
syslog facility = local5
pid file = /var/run/rsyncd.pid
[debian]
path = /home/mirror/ #### Ruta donde este el repositorio
comment = Archivos para compartir
read only = no
list = yes
#auth users =
#secrets file = /etc/rsyncd.secrets
#list = yes
uid = nobody
gid = nogroup
~# vim /etc/rsyncd.secrets
nobody:nobody
Tambien se puede usar para la descarga la opcion http en ves de rsync, eso solo si el servidor desde donde se esta descargando no soporta rsync. Ha!!! importante, se debera abrir en puerto 873 en el firewall para que el servidor se actualice, ya que es ese el puerto que utiliza rsync
Comentarios
Actualización de información
Los repositorios de Canaima cambiaron:
El script de canaima-universo ya no debe ser así:
debmirror --debug --progress --verbose --nosource --host=universo.canaima.softwarelibre.gob.ve --section=usuarios,servidores --method=rsync --root=:universo --dist=estable --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/universo
Debe ser así:
debmirror --debug --progress --verbose --nosource --host=universo.canaima.softwarelibre.gob.ve --section=main,contrib,non-free --method=rsync --root=:universo --dist=stable --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /home/universo
El script de canaima-repo que era así:
debmirror --debug --progress --verbose --nosource --host=repositorio.canaima.softwarelibre.gob.ve --section=usuarios,servidores --method=rsync --root=:canaima --dist=estable --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/canaima-repo
Ahora debe ser así:
debmirror --debug --progress --verbose --nosource --host=repositorio.canaima.softwarelibre.gob.ve --section=usuarios --method=rsync --root=:canaima --dist=estable --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/canaima-repo
El de canaima-seguridad que era así:
debmirror --debug --progress --verbose --nosource --host=seguridad.canaima.softwarelibre.gob.ve --section=usuarios,servidores --method=rsync --root=:canaima --dist=estable --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/canaima-seguridad
Ahora debe ser así:
debmirror --debug --progress --verbose --nosource --host=seguridad.canaima.softwarelibre.gob.ve --section=usuarios --method=http --root=: --dist=seguridad --arch=i386 --ignore-release-gpg --rsync-options=-aIL /home/canaima-seguridad
Si no quieres escribir tanto, haces un solo script con el nombre actualizar-canaima:
#!/bin/sh
# Autor: Engerbert Escalona
# Este script genera y/o actualiza los mirrors de Canaima
echo "Script de actualización automática de MIRRORs"
echo "Verificando..."
# Comprobamos si debmirror ya se está ejecutando
st=`ps cax |grep -c "debmirror"`
echo "Analizando Ejecución..."
if [ $st -eq 0 ];then
echo "Ejecutando Actualización...."
debmirror --debug --progress --verbose --nosource --host=repositorio.canaima.softwarelibre.gob.ve --section=usuarios --method=rsync --root=:canaima --dist=estable --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /var/www/canaima
debmirror --debug --progress --verbose --nosource --host=seguridad.canaima.softwarelibre.gob.ve --section=usuarios --method=http --root=: --dist=seguridad --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /var/www/canaima-seguridad
debmirror --debug --progress --verbose --nosource --host=universo.canaima.softwarelibre.gob.ve --section=main,contrib,non-free --method=rsync --root=:universo --dist=stable --arch=i386,amd64 --ignore-release-gpg --rsync-options=-aIL /var/www/universo
else
echo "Debmirror ya se está ejecutando"
echo "La Actualización esta en proceso..."
fi
Otra cosa uners ya no acepta conexiones rsync, saludos.