repositorio de ubuntu con apt-mirror
Saludos, es esta oportunidad quisiera compartir como he creado mis repositorios de ubuntu con los cuales logro entonces instalar las aplicaciones de mi ubuntu cuando no tengo internet, claro esta, esto es aplicable especialmente para ambientes corporativos, para festivales de instalacion o fiestas de lanzamiento (release party).
Instalación
Para crear el repositorio, preferiblemente he tenido internet, entonce, instalo la aplicacion apt-mirror que es la que se encargara de descargar desde internet, todo los archivos de mi distribucion, tambien instalo el apache server (servidor web), pues con el podre entonces publicar el repositorio que estoy creando, para instalar abrimos una terminal y en esta ejecutamos:
sudo aptitude install apt-mirror apache2
Una vez hecho esto, lo que tengo que hacer es editar el archivo /etc/apt/mirror.list en la misma terminal luego de terminada la instalacion ejecuto entonces:
sudo gedit /etc/apt/mirror.list
En el archivo mirror.list vamos a encontrar una lineas que comienzan con deb-src, esta lineas son las rutas del repositorio donde descargar las fuentes de la distribucion, como esto puede ocupar mucho espacio y mucho tiempo de descarga y en mi caso no es necesario tenerlo a mano, procedo a comentar esas lineas colocando al inicio de cada linea un #. Habiendo hecho esto entonces las lineas siguiente queda asi mas o menos:
Repositorio principal. : ~20GB:
deb http://archive.ubuntu.com/ubuntu karmic main restricted
Actualizaciones. Se modifica constantemente. Peso: ~2GB:
deb http://archive.ubuntu.com/ubuntu karmic-updates main restricted
Actualizaciones de seguridad. . Peso: <1GB
deb http://archive.ubuntu.com/ubuntu karmic-security main restricted
Es posible que descarguemos ademas todo el Software Libre mantenido por la comunidad, asi como el software NO LIBRE pero de libre distribucion, para ello solo tenemos que colocar al final de cada una de las lineas indicadas anteriormente las palabras:
universe multiverse
En caso de usar o querer incluir otra distribucion que no sea karmic, como hardy, jaunty o intrepid, solo debo remplazar el nombre indicado por el nombre correspondiente o agregar lineas similares para descargar esa version de mi distro, inclusive, si incluyo la info de repositorios de Debian, Cydia o cualquier timpo de repositorio APT.
Puesta en marcha
Luego de haberlo configurado, lo tenemos que poner en marcha con:
sudo apt-mirror
Colocamos esa linea, ya que el programa apt-mirror debe ejecutarse como el usuario de su mismo nombre, en caso contrario las actualizaciones porgramadas van a fallar. Recordemos que este processo de descarga puede tardar varios dias inclusive, en realidad depende que que tan bueno sea tu ancho de banda.
Automatización
Mientras se descargan todos los paquetes, configuro apt-mirror para que se ejecute automáticamente y asi se mantenga actualizado. Para ello uso:
sudo gedit /etc/cron.d/apt-mirror
Alli quito el # a la última línea. configurandolo para las 4 de la mañana, o en caso de no estar encendido mi compu a esa hora, procedera a hacerlo poco tiempo despues de su proxima encendida. Por se un CRON entonce lo puedo modificar a mi libre albedrio:
Publicacion
Cuando ya ha terminado de descargar el mirror o inclusive antes de esto, procedo a realizar un enlace simbolico que permita entonces publicar ese repositorio con el apache server, lo que hago asi:
sudo ln -s /var/spool/apt-mirror/mirror/archive.ubuntu.com/ubuntu/ /var/www/
Uso
Si todo ha salido bien, entonces ahora podemos configurar en nuestras estaciones de trabajo nuestro nuevo repositorio, de esta forma nuestras estaciones podran descargar de nuestro servidor local los archivos en vez de buscarlos en la internet, la configuracion en nuestra estacion sera mas o menos asi, abro una terminal en la estacion de trabajo, y ejecuto:
sudo gedit /etc/apt/sources.list
Alli debo colocar como repositorio el nuevo y local, por ejemplo, supongamos que la maquina a la que le acabamos de hacer la instalacion del apt-mirror tiene como numero IP el 192.168.1.1 entonces mas o menos asi quedaria mi archivo sources.list:
deb http://192.168.1.1/ubuntu/ karmic main restricted
deb http://192.168.1.1/ubuntu/ karmic-updates main restricted
deb http://192.168.1.1/ubuntu/ karmic-security main restricted
Recordemos que si hemos incluido los repositorios multivese y universe tambien podemo agregarlos en las lineas del sources.list de cada estacion o cliente.
Como es de costumbre, aclaro que esto no es un HOWTO PERFECTO, ni pretende ser la forma PERFECTA de como hacer las cosas, tan solo es mi humilde experiencia en el tema, y como yo he hecho las cosas, si alguien tiene aportes, siempre son bien recibidos.
Saludos Fraterno Ubunteros!!!




