Tener Ubuntu y una conexión permanente a Internet es la opción más feliz para disponer un sistema actualizado y para instalar sin demasiadas vueltas lo que se nos ocurra. Sin embargo, siempre existe una que otra computadora donde la conexión a Internet es imposible por motivos de diferente índole.

Para dichos casos ¿Cómo hacemos para instalar una aplicación o algunas librerías si no disponemos de una conexión a Internet?


Lo primero que debemos saber es que cuando instalamos una aplicación (aptitude install nombredelpaquete) lo que estamos haciendo es descargar de los repositorios un paquete .deb). Ese paquete, a su vez, puede tener dependencias. Por lo tanto, en ese caso se descargan también los paquetes de los cuales depende.

Luego de descargar los paquetes, los mismos se instalan con el dpkg. Todos los paquetes descargados van a parar a un directorio del sistema y no se eliminan hasta tanto lo hagamos manualmente.

Con esta información ya nos basta para lograr nuestro cometido, obviamente disponiendo de una PC con conexión a Internet desde donde descargaremos inicialmente los archivos necesarios.

En adelante, la receta:

  • Vaciamos la “caché” del apt donde actualmente residen todos los paquetes que en su momento has descargado. Luego verificamos que no queden archivos .deb en el directorio /var/cache/apt/archives/.

$ sudo aptitude clean
$ ls -l /var/cache/apt/archives/

  • Instalamos un determinado paquete. Es posible que éste tenga dependencias. El aptitude se encargará de descargarlas también. Si deseamos conocer las dependencias de un paquete lo podemos hacer a través del Gestor de paquetes Synaptic, seleccionando un paquete y luego de hacer clic en propiedades viendo la solapa dependencias.

$ sudo aptitude install build-essential

dependencias

  • Si luego de la instalación, listamos nuevamente el directorio /var/cache/apt/archives/ encontraremos varios archivos .deb (el del paquete instalado y el de sus dependencias). Estos archivos son los que copiaremos a un dispositivo (Ej: memoria USB) y los llevaremos al equipo sin conexión a Internet.
  • Ya en el equipo aislado del mundo, corremos el dpkg manualmente para instalar el paquete (recuerda que debes hacer lo mismo, previamente, con las dependencias)

$ sudo dpkg -i nombredelpaquete

El procedimiento es inevitablemente manual, pero no es para nada complejo. Recuerda, que la función del aptitude install en un equipo con conexión a Internet es la de automatizar esta tarea.

Vía: El Blog de Jabba