Habilitacion de DVDs Debian para servidor de paquetes
Una vez descargados los 20 DVDs los paquetes Debian de las ramas main y contrib, estos son los pasos realizados para habilitar su uso en el servidor del Núcleo GNU/Linux.
Obtener los .iso
Son 10 DVDs para cada arquitectura, 1 para i386 y 1 para amd64, se coṕio los isos en /var/ftp
Habilitar al menos 20 loops
(Falta documentar.- Como se habilitó hasta 20 loops)
Para que los isos copiados puedan ser montados en /media y de allí hacer un link simbólico a /var/www, mediante el siguiente script llamado mknod.sh:
#!/bin/bash
#añade en /dev/loop nuevos loops y le da permisos
for NODE in $(seq 8 20)
do
mknod -m 660 /dev/loop$NODE b 7 $NODE
chmod 666 /dev/loop$NODE
done
Montar los isos
Se ejecuta el siguiente script llamado montar.sh:
#!/bin/bash
cd "/var/ftp/isos/Debiam 7.2.0 amd64/"
for NODE in $(seq 1 10)
do
mount -o loop debian-7.2.0-amd64-DVD-$NODE.iso /media/dvd$NODE-64
done
Hacer un link simbólico
Mediante el script llamado "linkear-todos.sh"
#!/bin/bash
for NODE in $(seq 1 10)
do
echo "linkeando... /media/dvd$NODE-32/debian /var/www/dvd32-$NODE"
ln -s /media/dvd$NODE-32/debian /var/www/dvd32-$NODE
ln -s /media/dvd$NODE-64/debian /var/www/dvd64-$NODE
done
Asegurar que se realicen los pasos al reiniciar el servidor
Todo el proceso lo hace el script Mon_link_isos_deb.sh
#!/bin/bash
echo "-....................-"
cd /root
./mknod.sh
./montar.sh
./montari386.sh
./linkear-todos.sh
echo "--------------------------------------------"
date | xargs
echo "--------------------------------------------"
#else
exit 0
Al final por si se apaga el equipo para seguir teniendo montados los isos, se debe añadir el script "Mon_link_isos_deb.sh" a /etc/init.d/ y ejecutar en ese direcotrio.
update-rc.d <nombre del script> defaults 99
Sin usar Apache (mas directa con python)
Si no se cuenta con apache o php se puede usar python para usar repositorios. De esta forma no es necesario siquiera hacer links simbolicos o montar en media
montar los DVDs en carpetas locales
Una vez tenemos DVDs creamos carpetas donde se montaran estos DVDs, para montar en esas carpetas desde la terminal usamos:
# mount -o loop Repositorios_Debian_7.6/debian-7.6.0-amd64/debian-7.6.0-amd64-DVD-3.iso REPOS/DVD3-64/
Que fucnionaría para el DVD 3, lo mismo para los otros DVDs por ejemplo para el DVD1:
# mount -o loop Repositorios_Debian_7.6/debian-7.6.0-amd64/debian-7.6.0-amd64-DVD-1.iso REPOS/DVD1-64/
Nota.- se ha creado antes la carpeta REPOS/DVD1'64 y las demas para los otros DVDs
Usar python para crear servidor de HTTP
Esta vez cambiamos el directorio de trabajo a la carpeta donde están montados los DVDs, en este caso es en home/algo/REPOS Ahora ejecutamos el siguiente comando:
sudo python -m SimpleHTTPServer 80
Que habilitará el puerto 80 como servidor HTTP simple.
En sources.list
Ahora mientras el server python esté funcionando podemos acceder a los repositorios en los DVDs que montamos desde la red local o incluso de la misma PC. por ejemplo añadiremos las siguientes líneas en /etc/apt/sources.list:
# repo de prueba
deb http://localhost/DVD1-64/debian wheezy main
deb http://localhost/DVD2-64/debian wheezy main
deb http://localhost/DVD3-64/debian wheezy main
# -----------------------
despues apt-get update y listo :)