Repositorio Local Debian sin Internet

Este post lo escribo para todos aquellos debianitas que quieren actualizar su sistema sin una conexion a Internet tal como lo tienen en la oficina o en su defecto como lo tiene alguna pana por ahi, esto lo haremos mediante la copia de archivos deb en donde esten almacenados.

Crear una carpeta para el repositorio local, por ejemplo:

/home/usuario/repo-debian/

Crear una subcarpeta para los paquetes, por ejemplo:

/home/usuario/repo-debian/paquetes/

Pongo a eleccion las dos formas para realizar un obtención de archivos deb

– Copiar los paquetes *.deb, desde el medio de transporte(usb, cdrom) a la carpeta

– Copiar la carpeta /var/cache/apt/archives a nuestro destino del cual haremos nuestro repositorio local
/home/usuario/repo-debian/paquetes/, por ejemplo, si los tenemos en el directorio raíz de un CD-ROOM, teclearíamos, como root (super usuario):

# cp /mnt/cdroom/carpeta/*.deb /home/usuario/repo-debian/paquetes

Instalar el paquete dpkg-dev

# cd /home/usuario/repo-debian/paquetes
# dpkg -i dpkg-dev

Creamos el archivo (Packages) con las cabeceras de los paquetes:

# cd /home/usuario/repo-debian
# dpkg-scanpackages paquetes /dev/null > Packages

Puede suceder el caso que tengamos el directorio partial dentro de la carpeta repo-debian si es el caso que copiamos los archivos de la oficina /var/cache/apt podemos borrarlo para que procese esos paquetes xq como sabemos estan incompletos.

Creamos el archivo comprimido de las cabeceras (comprimimos el
packages):

# gzip -c Packages > Packages.gz

Modificamos el /etc/apt/sources.list tecleando:

# vi /etc/apt/sources.list

Insertamos al principio del archivo *deb
file:/home/usuario/repo-deb/ ./* y también sería conveniente desactivar los repositorios de Internet (para que no pierda tiempo intentando conectar, pues no tenemos conexión) comentando (un ‘#’ delante) las líneas que haya descomentadas, o en su defecto podemos crear un sources.list.bk para respaldo y borramos todas las lineas que no nos sirvan en el original.

Nuestro /etc/apt/sources.list quedaría así:

# Fichero /etc/apt/sources.list preparado para repositorio local (sin conexión a Internet)

# Mi debian local
deb file:/home/usuario/repo-debian/ ./

Ahora ya podemos actualizar la lista de paquetes (apt-get update) e instalar los paquetes que necesitemos:

# apt-get update
# apt-get install nombre_programa

Saludos y espero les sirva de ayuda

Anuncios