miércoles, 11 de agosto de 2010

Configurar Servidor de Repositorio o Mirror Debian Lenny

     Un repositorio, es un sitio centralizado donde se almacena y mantiene información digital, habitualmente bases de datos o archivos informáticos. El origen de la palabra española repositorio deriva del latín repositorium, que significaba armario, alacena. Este término es recogido en el Diccionario de la Real Academia (DRAE) como: "Lugar donde se guarda algo". Un repositorio no es más que una gigantesca (literalmente) colección de software de todo tipo. Agrupado, ordenado y empaquetado de forma compatible con tu sistema.

* 1. Requerimientos mínimos para Configurar Servidor de Repositorio o Mirror:
 - Equipo con monitor y teclado, no se necesitará mouse ya que se debe instalar el Sistema Operativo (preferiblemente Debian Estable) sin entorno gráfico.
  - 80Gb de Disco Duro (Suficiente espacio en /var ya que, allí será descargado todo el repositorio).
  - 2Gb de Memoria Ram
  - Procesador de 3.0 Ghz

* 2. En dado caso que se vaya a manejar el Repositorio desde otro equipo se debe ejecutar el siguiente comando para saber la Dirección IP:
 ifconfig


* 3. Ingresar vía ssh al Servidor de Repositorio con el siguiente comando:
 ssh Dirección IP

* 4. Instalar los siguientes paquetes debmirror y apache2; el primero para lograr realizar la sincronización con el repositorio de debian.org y el segundo para poder descargar paquetes vía http. La instalació realizada con este comando:
 aptitude install debmirror apache2

* 5. Colocar en el navegador de preferencia la Dirección IP del Servidor de Repositorio para verificar que está funcionando correctamente apache y nos tiene que mostrar un mensaje que dice asi: It Work!.

* 6. En el caso que arroje un error ejecutar el siguiente comando en un Terminal:

  # /etc/init.d/apache2 stop
  # /etc/init.d/apache2 start


* 7. Se deben crear, a través del Terminal, tres (3) carpetas en /var/www/, en las cuales se va a descargar el Repositorio cada vez que sea actualizado; para esto se aplica el siguiente comando:
 mkdir /var/www/lenny
 mkdir /var/www/multimedia
 mkdir /var/www/security
     Hasta el momento el Servidor de Repositorio Local estará listo para iniciar las descargas desde debian.org.


* 8. 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 dentro del script incluir las líneas abajo colocadas:
 nano nombre_script.sh

debmirror /var/www/lenny --host=ftp.debian.org --root=/debian --dist=lenny --section=main,contrib,non-free --arch=i386 --progress --method=http --nosource --ignore-release-gpg -v
     Esta línea es para realizar la actualización de toda la paquetería de Debian Lenny y se descargarán, la primera vez, entre 20 y 25Gb; el resto serán actualizaciones de menor tamaño.

debmirror /var/www/multimedia --host=www.debian-multimedia.org --dist=lenny --arch=i386 --root=/ --method=http --section=main --ignore-release-gpg -v
     Aquí se estará descargando todos los paquetes concernientes a Multimedia al Repositorio Local para luego utilizarlo en las Estaciones de Trabajo. Serán descargados aproximadamente 800Mb, la primera vez.


debmirror --ignore-release-gpg -a i386 -s main,contrib,non-free -h security.debian.org -d lenny/updates --nosource --progress --cleanup --method=http --debug -v -r /debian-security /var/www/security
     Con esta ultima línea se actualizarán o descargarán los paquetes de Seguridad de Debian. Aproximadamente se descargarán, en la primera oportunidad, 3Gb y el resto serán mínima las descarga.

* 9. Asignarle todos los permisos al script; esto se realiza con el siguiente comando:
 chmod 777 /ruta_del_script

* 10. Luego ejecutar por primera vez el script; esto se realiza con los siguientes comando:
 ./ruta_del_script


* 11. 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 .txt 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/



Éxito.