repositorio local

Mauricio J. Adonis C. mike.alfa.2007 en gmail.com
Vie Mar 20 19:13:37 GMT 2009


Nelson Morales Campos escribió:
>  hola  a  todos  los  de  la  lista  yo souy nuevo por aquí y estoy en
>  trámite de la migración a sofwa libre, tengo instalado el Ubunto 8.10
>  y   necesito  crear un repositorio  en la red local porque tengo solo
>  una máquina con conección.
>   
El siguiente tutorial está en internet y es para Feisty, pero puede
adaptarse a cualquier versión de Ubuntu.

Como crear un repositorio local de Ubuntu

Cuando tienes una red de PCs todos con la misma distro, resulta muy
molesto tener que estar bajando las actualizaciones para todas de
internet, o cualquier paquete, cuando lo más fácil sería bajarlo para
una y que desde ahí se propague al resto, y no tener que estar saturando
los servidores de Ubuntu, ni perdiendo el tiempo en bajar el mismo
paquete x veces, así que tienes dos opciones o crearte un repositorio
con apt-cacher, así bajas el paquete una sola vez para un PC y ya los
demás lo piyan desde ese PC, o montarte un repositorio local con
apt-mirror, esto es más pesado pero tienes todos los paquetes y si creas
un cron se actualizan a diario, la primera vez tienes que bajarte unos
32Gb pero ya las siguientes sólo las actualizaciones.

Primero instalamos apt-mirror en feisty, también necesitaremos tener
apache corriendo en el PC, o podemos instalarnos xampp ...

$ sudo aptitude install apt-mirror apache2

... en el archivo de configuración, que está en /etc/apt/mirror.list
debe quedar:

############# config ##################
#
# set base_path /var/spool/apt-mirror
#
# if you change the base path you must create the directories below with
write privlages
#
# set mirror_path $base_path/mirror
# set skel_path $base_path/skel
# set var_path $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch 
set nthreads 20
set tilde 0
#
############# end config ############## 

deb http://archive.ubuntu.com/ubuntu feisty main restricted universe
multiverse
deb http://archive.ubuntu.com/ubuntu feisty-updates main restricted
universe multiverse
#deb http://archive.ubuntu.com/ubuntu feisty-backports main restricted
universe multiverse
deb http://archive.ubuntu.com/ubuntu feisty-security main restricted
universe multiverse
#deb http://archive.ubuntu.com/ubuntu feisty-proposed main restricted
universe multiverse

deb-src http://archive.ubuntu.com/ubuntu feisty main restricted universe
multiverse
deb-src http://archive.ubuntu.com/ubuntu feisty-updates main restricted
universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu feisty-backports main
restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu feisty-security main restricted
universe multiverse
#deb-src http://archive.ubuntu.com/ubuntu feisty-proposed main
restricted universe multiverse

clean http://archive.ubuntu.com/ubuntu


Puedes incluir todos los repositorios que quieras de tu sources.list en
mirror.list. Ya que está configurado nuestro mirror.list pasamos a
descargarnos los repositorios, para ello ejecutaremos apt-mirror: sudo
apt-mirror, esto dura bastante tiempo porque hay que bajar 32Gb, y hay
que tener libre ese espacio en nuestro disco duro.

Después de finalizar el proceso procederemos a eliminar los paquetes que
sobran, para ello
ejecutamos /bin/bash /var/spool/apt-mirror/var/clean.sh, y tendremos
unos cuantos megas libres en paquetes obsoletos que han sido eliminados.

Ahora cada vez que queramos actualizar el repositorio ejecutamos 

$ sudo apt-mirror

...si queremos tenerlo actualizado diariamente editamos el
archivo etc/cron.d/apt-mirror, y lo dejamos como este:

#
# Regular cron jobs for the apt-mirror package
#
0 4 * * * apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log

Esto ejecutará la actualización de nuestro repositorio todos los días a
las 4 de la mañana.

Ahora sólo resta hacer el repositorio disponible a través de apache,
para ello ejecutamos ...

$ sudo ln -s /var/spool/apt-mirror/mirror/de.archive.ubuntu.com/ubuntu /var/www/

... y ya estará disponible nuestro repositorio, y sólo resta configurar las
máquinas clientes de ese repositorio, editamos /etc/apt/sources.list, y
ponemos en todas las entradas la dirección de la maquina que sirve como
repositorio, aquí uno de ejemplo:

deb http://localhost/ubuntu/ feisty main restricted universe multiverse
deb-src http://localhost/ubuntu/ feisty main restricted universe
multiverse 

deb http://localhost/ubuntu/ feisty-updates main restricted universe
multiverse
deb-src http://localhost/ubuntu/ feisty-updates main restricted universe
multiverse

deb http://localhost/ubuntu/ feisty-security main restricted universe
multiverse
deb-src http://localhost/ubuntu/ feisty-security main restricted
universe multiverse


Listo ya podemos empezar a utilizar nuestro repositorio.

(Lógicamente donde dice feisty puedes cambiarlo a la versión de Ubuntu
que tú usas, hardy, intrepid, etc).

-- 
Saludos, 
Mauricio J. Adonis C.
------------------------------------------
Usuario Linux  # 482032
Usuario Ubuntu #  25554
Ubuntu Code of Conduct - 1.0.1 signer
(FD9329AC66C0907805831BF8E8D0B29A3AE3D244)
------------------------------------------


------------ próxima parte ------------
Se ha borrado un mensaje que no está en formato texto plano...
Nombre     : signature.asc
Tipo       : application/pgp-signature
Tamaño     : 252 bytes
Descripción: OpenPGP digital signature
Url        : https://lists.ubuntu.com/archives/ubuntu-es/attachments/20090320/916bcaec/attachment.pgp 


Más información sobre la lista de distribución ubuntu-es