Saltar al contenido

¿Cómo puedo instalar un paquete sin acceso de root?

Necesitamos tu ayuda para difundir nuestros escritos sobre las ciencias de la computación.

Solución:

Apt no lo admite directamente, pero hay formas de hacerlo.

uno es para usar schroot para crear un chroot no root. Este es un proceso algo complicado, pero debería poder encontrar ayuda de la comunidad para muchos desarrolladores que configuran entornos chroot para compilar código.

La segunda forma que conozco es instalar desde un paquete .deb. Es posible que pueda descargar esto desde un sitio web o si está en los repositorios de Ubuntu, puede descargarlo.

apt-get download package

Reemplazar package con el nombre del paquete

Una vez que tenga su archivo de deuda, llame dpkg directamente desde la línea de comandos. El siguiente ejemplo instalará package.deb en su directorio de inicio.

dpkg -i package.deb --force-not-root --root=$HOME 

La desventaja de usar dpkg de esta manera es que es probable que los mensajes de error sean crípticos; dpkg no resuelve automáticamente las dependencias ni crea la estructura de directorios que espera.

Finalmente, podrías usar el apt-get source Comando para obtener la fuente del paquete y configurarlo para instalarlo localmente. Por lo general, esto se parece a:

apt-get source package
cd package
./configure --prefix=$HOME
make
make install

La desventaja de este enfoque es que necesita el entorno de desarrollo disponible para que este enfoque funcione, y es posible que se encuentre compilando docenas de paquetes para resolver todas las dependencias.

EDITAR:

Como dpkg -i no funciona (ver comentarios), sugiero esta alternativa:

dpkg -x package.deb dir

Esto extraerá el paquete .deb a dir. Luego puede exportar la RUTA donde está el binario. Siempre que todas las dependencias del binario estén instaladas, debería funcionar con normalidad.

Supongo que quieres instalar jedit. Primero tienes que encontrar el paquete y descargarlo. Simplemente tomo el archivo deb de algún espejo y abro una consola/terminal:

  1. mkdir /tmp/jedit && cd /tmp/jedit — Hace un nuevo directorio en tmp y se transforma en él.
  2. wget http://mirrors.kernel.org/ubuntu/pool/universe/j/jedit/jedit_4.3.1.dfsg-0ubuntu1_all.deb — Descargar paquete
  3. ar x jedit_4.3.1.dfsg-0ubuntu1_all.deb o, fácil de escribir, ar x *.deb — esto extrae el contenido del archivo
  4. tar xvzf data.tar.gz — el archivo data.tar.gz tiene todo lo que necesita para ejecutar el software
  5. usr/bin/jedit abre el editor
  6. hecho 🙂

Puede mover los archivos a algún punto de su directorio de inicio y ejecutarlos desde allí.

Escribí un programa llamado JuNest que básicamente permite tener una distribución de Linux realmente pequeña (que contiene solo el administrador de paquetes) dentro de su directorio $HOME/.junest.

Le permite tener su sistema personalizado dentro del directorio de inicio accesible a través de proot y, por lo tanto, puede instalar cualquier paquete sin privilegios de root. Se ejecutará correctamente en todas las principales distribuciones de Linux, la única limitación es que JuNest puede ejecutarse en el kernel de Linux con la versión mínima recomendada 2.6.32.

Por ejemplo, después de instalar JuNest, para instalar jedit:

$>junest -f
(junest)$> pacman -S jedit
(junest)> jedit

Sección de Reseñas y Valoraciones

Recuerda dar visibilidad a esta reseña si te fue de ayuda.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

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