En esta oportunidad, se dejará documentado la creación un repositorio de
Linux GNU/Debian en su versión estable para tenerlo en un equipo de la
red interna de la oficina o casa.
Caracteristicas: Serán replicadas las ramas, debian-main, debian-backports, debian-multimedia, debian-security, igualmente las de Canaima.
Ventajas: Al momento de querer realizar una instalación
limpia de un equipo que se encuentre dentro de la misma red del
servidor (mirror) se haran a la velocidad de la red interna, es decir,
10mbits, 100mbits o inclusive 1Gbits.
Desventajas: Aunque el
ancho de banda puede ser regularizado (vía parametros en comandos) se
hará un buen uso del ancho de banda hasta tanto se tenga una copia
completa del repositorio en local, por lo que se recomienda, realizarlo
en horas de la noche, para no afectar a otros usuarios de la red
interna.
Requisitos: Se necesitará, al menos para el caso que se explicará acá, crear unas carpetas, darles el respectivo permiso, instalar algunos paquetes, manejo de cron (para la automatización) y hacer uso de editor de texto.
0) Instalación de paquetes: Instalar debmirror y apache2
aptitude install apache2 debmirror -y
Nota 0: Instala el paquete encargado de realizar la sincronización entre
el servidor mirror (internet) y nuestro equipo local (LAN).
1) Creación de carpetas necesarias:
Se deben crear, a través del Terminal, estas carpetas en /var/www/mirror/, en las cuales se va a descargar el Repositorio y cada vez que se hagan actualizaciones será allí donde se descargarán las misma; para esto se aplica el siguiente comando:
Se deben crear, a través del Terminal, estas carpetas en /var/www/mirror/, en las cuales se va a descargar el Repositorio y cada vez que se hagan actualizaciones será allí donde se descargarán las misma; para esto se aplica el siguiente comando:
$ sudo mkdir /var/www/mirror/debian-seguridad
$ sudo mkdir /var/www/mirror/debian-multimedia
$ sudo mkdir /var/www/mirror/debian-backports
$ sudo mkdir /var/www/mirror/universo
$ sudo mkdir /var/www/mirror/canaima-repo
$ sudo mkdir /var/www/mirror/canaima-seguridad
Nota 1: En este paso se crean las carpetas donde
estaran alojados los scripts que controlaran el proceso de descarga,
inicio y stop del mirror.
2) Realizar el Script: Se debe hacer 1 script
en bash, esto para usarlos luego con cron y hacer actualizaciones
periódicamente. En un Terminal ejecutar el siguiente comando y en el
mismo incluir las líneas abajo colocadas:
nano repositorio.sh
nano repositorio.sh
Repositorio Debian Squeeze Local
repositorio.sh guión Queda ASI:
#! / Bin / bash
# # Debian
debmirror - debug - nosource - curso - verbose - host = ftp.br.debian.org - root = debian - method = rsync - dist = squeeze - arch = amd64, i386 - section = main, contrib, non-free - ignore-missing-release - rsync-options =-ail / var / www / mirror / debian
Repositorio Local Debian Seguridad
guión seguridad.sh Queda ASI:
# Debian Seguridad
debmirror - debug - curso - verbose - nosource - host = security.debian.org - section = main, contrib, non-free - method = http - root = debian-security - dist = squeeze / actualizaciones - arch = amd64, i386 - ignore-release-gpg - rsync-options =-ail / var / www / mirror / debian-seguridad
Repositorio Local Debian Multimedia
guión multimedia.sh Queda ASI:
# Debian multimedia
debmirror - debug - curso - verbose - nosource - host = www.debian-multimedia.org - section = principal - method = rsync - root = debian - dist = squeeze - arch = amd64, i386 - ignore-release-gpg - rsync-options =-ail / var / www / mirror / debian-multimedia
Repositorio Local Debian Backports
guión backports.sh Queda ASI:
# debian Backports
debmirror - debug - curso - verbose - nosource - host = debian.ustc.edu.cn - section = main, contrib, non-free - method = rsync - root = debian-backports - dist = squeeze-backports - arch = amd64, i386 - ignore-release-gpg - rsync-options =-ail / var / www / mirror / debian-backports
Los repositorios de Canaima cambiaron:
Repositorio Debian Canaima
El guión de canaima-universo es asi:
debmirror - debug - curso - verbose - nosource - host = universo.canaima.softwarelibre.gob.ve - section = main, contrib, non-free - method = rsync - root =: Universo - dist = estable - arch = i386, amd64 - ignore-release-gpg - rsync-options =-ail / var / www / mirror / universo
El guión de canaima-repo Queda ASI:
debmirror - debug - curso - verbose - nosource - host = repositorio.canaima.softwarelibre.gob.ve - section = Usuarios - method = rsync - root =: canaima - dist = Estable, desarollo, Pruebas - arch = i386, amd64 - ignore-release-gpg - rsync-options =-ail / var / www / mirror / canaima-repo
El de canaima-seguridad Queda ASI:
debmirror - debug - curso - verbose - nosource - host = seguridad.canaima.softwarelibre.gob.ve - section = Usuarios - method = http - root =: - dist = direction seguridad - arch = i386, amd64 - ignore-release-gpg - rsync-options =-ail / var / www / mirror / canaima-seguridad
TAMBIEN PUEDE SER UN SCRIPT CON TODO....
#!/bin/sh
# Autor: Nombre y Apellido
# 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 Ejecucion..."
if [ $st -eq 0 ];then
echo "Ejecutando Actualizacion...."
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,servidores
--method=rsync --root=:canaima --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ájecutando"
echo "La Actualizacion esta en proceso..."
fin
Por ultimo: Asignarle todos los
permisos al script para luego ejecutarlo por primera vez el script; esto
se realiza con los siguientes comando:
chmod 777 /ruta_del_script
./ruta_del_script
Opcional:
Si se desea que el Servidor ejecute las tres líneas de comando anteriores, de forma automática cada cierto tiempo, para esto es posible Configurar Cron o Tareas Programas. Cron es para programar tareas que ejecutará el Servidor Local automáticamente.
También existe la posibilidad de guardar un archivo .log con las actualizaciones que realizó automáticamente el Servidor de Repositorio o Mirror; simplemente con colocar el siguiente comando al final de cada una de las tres líneas antes mencionadas:
>> /ruta/donde/queremos/guardar/el/archivo.txt/
No hay comentarios:
Publicar un comentario