Usando un repositorio de forma local en Ubuntu 16.04

Hola, la versión 16.04 de Ubuntu trajo algunas novedades y un sistema con muchas correcciones, pero con una muy mala noticia para los que normalmente estamos desconectados de la red, se aplicaron varias medidas de seguridad en el sistema de instalación de paquetes que provocaron que dejaran de funcionar los repositorios configurados localmente.

Lo primero que nos viene a la mente, para resolver dicho problema es exponer el repositorio con un servidor HTTP como Apache, para así poder acceder al mismo como si estuviera en la web, pero esto tiene un problema: ¿Si acabamos de instalar la PC y no tenemos acceso a un repositorio cómo vamos a instalar un servidor HTTP?. Pues para esto nos salva Python, un lenguaje de programación que viene instalado por defecto en Ubuntu y en la mayoría de las distribuciones de GNU/Linux y que cuenta con un módulo que es nada mas y nada menos que un servidor HTTP simple, pero es mas que suficiente para poder exponer y utilizar nuestro repositorio desde la web.

Para realizar esto lo único que tenemos que hacer es movernos en una terminal hasta la raiz del repositorio (donde se encuentran las carpetas dist y pool) y correr el comando:

python3 -m http.server

o también podemos correr:

python2 -m SimpleHTTPServer

Esto expondrá la carpeta en la web por el puerto 8000 y ya podemos configurar nuestro repositorio para que se utilice desde la web, una linea de ejemplo de nuestro sources.list seria:

deb http://localhost:8000/ xenial main restricted universe multiverse

Actualizamos los índices con:

sudo apt update

Y ya podemos utilizar el repositorio sin problemas, con el único inconveniente (o no) de que el repositorio estará expuesto para toda la red y no solo para nuestra PC.

7 Replies to “Usando un repositorio de forma local en Ubuntu 16.04”

  1. Hola hermano, m situación es un poquito parecida: he instalado y tengo conexión, pero a la hora de actualizar, como navego a través de un proxy siempre me pide auth al hacer un apt-get update. No puedo actualizar y se me convierte esto en un problema, pues en la pincha estoy cocinando un servidorcito y tengo todo preparado para meterle caña pero, primero lo primero no? Si tienes algo para mi o alguien quiere colaborar que me escriba a informatica@cy.pppcfgos.co.cu yo estaré agradecido.

  2. Hola hace poco instalé linux en mi PC por cosas de la escuela y llevo tiempo ya tratando de instalar apps como VLC, kiwix, synaptic, y muchas otras para el día a día pero no he podido pues siempre me piden que falta algo como una librería por instalar y termina dando error. Tampoco he podido instalar ninguna repo pues necesito conexión a alguna red y mi PC que es de escritorio la tengo en mi casa. Me gustaría instalar algunas apps básicas para el uso diario, ya probé descargarlas en el sitio de gutl pero como ya había dicho me dan siempre problemas. Cualquier sugernecia o respuesta a mi problema me gustaría q me pudieran dar respuesta a través de mi correo darield@tele.cujae.edu.cu Gracias

  3. Colega en mi caso acabo de instalar una pC con ubuntu server, mis repos los tengo en un disco externo, cuando me paro en cd/media/FITIN(nombre del disco externo) me dice que el directorio no existe, tengo ubuntu desktop en mi pc personal y me funciona de lo mejor, el problema me esta pasando nada mas en debian como server y ubuntu server, que se puede hacer en este caso?

    • Hola, te da ese error porque, como bien dice el mensaje la carpeta “/media/FITIN” no existe.
      El problema es que la versión de Ubuntu para servidores (al igual que Debian) no monta de forma automática los dispositivos externos. Para ello debes usar el comando mount, algo así:

      mount /dev/sdb1 /mnt

      Esto montará el dipositivo sdb1 (disco b, partición 1) en la carpeta /mnt

      Esto debes hacerlo con permisos elevados o como root. Para ver que dispositivos de almacenamiento reconoce el servidor en un momento dado, puedes usar (como root) el comando:

      fdisk -l

      Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*