Crear un repositorio local con los archivos descargados

Extraído de UbuntuLife aunque en este momento no encuentro el enlace original para colocarlo aquí, lo tenia grabado por su gran utilidad.

Imagina que tienes una maquina donde has ido instalando una serie de aplicaciones y ahora quieres instalar lo mismo en otra maquina diferente, o incluso tienes una maquina sin conexión a Internet y quieres poder transferir las aplicaciones instaladas a esa maquina. Una posible solución es crear un repositorio de los archivos descargados para poder utilizarlo cuando necesites reinstalarlos en caso de necesidad o quieras pasárselos a algún otro usuario que no pueda descargar esos paquetes.

Cada vez que nos descargamos un archivo con apt-get, aptitude o synaptic, este queda guardado en /var/cache/apt/archives.

Podriamos guardar el contenido de esa carpeta, y cuando quisiéramos instalar todo de nuevo hacer simplemente un:

dpkg -i paquete.deb (instala un paquete)

o

dpkg -i *.deb (instala todos)

pero esto (si no tenemos todas las dependencias cumplidas) puede darnos algún que otro problema.

La solución es crear un repositorio de esos archivos. Para hacerlo:

1) Copia todo el contenido de esa carpeta a algun directorio. por ejemplo a tu directorio home, también puedes copiar todos aquellos paquetes *.deb sueltos que tengas y que quieras añadir:

$ mkdir paquetes
$ cp /var/cache/apt/archives/*.deb /home/$USER/paquetes

2) Ahora creamos el indice del repositorio:

$ cd /home/$USER/
$ dpkg-scanpackages paquetes /dev/null | gzip > paquetes/Packages.gz

Lo que hacemos con el comando dpkg-scanpackages es leer todos los archivos *.deb que tenemos en el directorio y con gzip creamos el archivo Packages.gz que indica a apt cuales son los paquetes que luego podremos instalar.

3) Grabamos el contenido del directorio “paquetes” a un CD y ya tenemos un CD listo para ser usado como repositorio.

4) Para usar el CD como repositorio, abrimos la consola y ejecutamos:

sudo apt-cdrom add

Esto nos pide que insertemos el CD, insertamos el CD creado anteriormente y ya podemos emplearlo con apt-get, aptitude o Synaptic para instalar nuestros paquetes.

5) Otra solución sin necesidad de grabarlo en un CD es la que se comenta aquí.
Consiste en crear el repositorio igual que antes, pero luego en vez de grabarlo a CD lo montamos como sistema de repositorio local en disco.
Para ello:

Editamos el archivo sources.list

$ gksu gedit /etc/apt/sources.list
$ kdesu kate /etc/apt/sources.list  (para kubuntu)

y después añadimos la siguiente linea:

deb file:/home/$USER/ paquetes/

(Sustituye /home/$USER/paquetes por el directorio donde hayas creado tu el repositorio)

Para recargar la información y actualizar los repositorios ahora basta con entrar en Synaptic y ejecutar
Sistema->Administracion->Gestor de Paquetes Synaptic -> Editar -> Recargar Información de paquetes

o desde consola ejecutar:

sudo apt-get update

y ya podremos instalar los paquetes que tenemos guardados en el repositorio local.

Que lo disfrutes!!!