Tutorial: ¿Cómo instalar cualquier paquete en GNU/Linux?

Extensiones de paquetes Linux

Una de las cuestiones que aun siguen generando problemas para los recién llegado a Linux o para los usuarios con menos conocimientos es la instalación de paquetes. Esto en parte se ha resuelto con herramientas como YaST, Centro de Software, Pi Store, y otros programas para automatizar las instalaciones en Linux como Gdebi, Synaptic, etc.

Pero cuando descargamos paquetes de software que no se encuentran en los repositorios de nuestra distribución o queremos instalar una versión diferente a la que nos aportan las fuentes de nuestra distro, la cosa se complica más. Sobre todo cuando los paquetes descargados son tarballs con código fuente.

En Windows, con Windows Installer es todo mucho más fácil, además no existen demasiadas extensiones de binarios para instalar (.exe, .bat, .msu). Los que provengan de la plataforma de Apple también se habrán percatado que de los .dmg de Mac OS X se pasa a tener demasiadas extensiones.

Otro tema escabroso en Linux (y otros *nix) son las dependencias, es decir, paquetes que dependen de otros paquetes y si éstos últimos no están instalados no podremos instalar el primero. En este caso existen multitud de gestores de paquetes que nos facilitan la vida y resuelven automáticamente las dependencias. De lo contrario las tendríamos que resolver nosotros mismos manualmente.

Con este tutorial pretendo que todo esto sea algo más trivial para ti y no suponga un problema a la hora de instalar programas. En las siguientes líneas vamos a describir todas las extensiones y tipos de paquetes más conocidos que existen en el mundo Linux y el procedimiento para instalarlos de manera sencilla.

deb vs rpm Tux: ¿Y tú cual prefieres?

Paquetes .deb y .rpm:

Linux está dividido en dos grandes mundos y lo representan muy bien los paquetes DEB y los RPM. El primero es empleado por Debian y derivados como Ubuntu, mientras que el segundo se emplea en SuSE, Fedora, y otras.

RPM:

Si estás en Novell SuSE o en openSuSE, puedes usar YaST para instalar paquetes de este tipo. Para ello solo tienes que ir al menú de SuSE, hacer clic en “Sistema”, “YaST” y luego vamos a la opción “Instalar/desinstalar software”. Así podremos instalar paquetes desde el DVD de tu distro o desde la red.

Si ya tenemos el paquete descargado, podemos hacer clic con el botón derecho sobre él y nos dará la opción de Instalar. Muy sencillo…

Si queremos hacerlo desde la consola en vez de YaST usa Zypper:

zypper install nombre_programa

En Red Hat más de lo mismo… En cambio, si tienes Fedora o CentOS, puedes usar YUM. Vayamos primero con YUM, que desde el directorio donde se encuentra el paquete, en el terminal debes escribir:

yum install nombre_paquete

Y si existe una herramienta común para instalar RPM es la propia rpm presente en multitud de distribuciones que se basan en este tipo de paquetería:

rpm –i nombre_paquete.rpm

En Mandriva se puede emplear el Mandriva Control Center para instalar programas o RPMDrake. También puedes emplear en modo texto

urpm:

urpm –i nombre_paquete.rpm

DEB:

En Ubuntu, puedes emplear el sencillo Centro de Software de Ubuntu para instalar paquetes desde los repositorios oficiales. Desde Debian también se puede instalar con gdebi-gtk, de forma gráfica y sencilla o con Synaptic, estos también funcionan en otras distros, solo tienes que instalarlos.

Otra herramienta interesante es Dselect, también en modo gráfico para manejar los paquetes de forma sencilla. Pero para los que les tire más la consola, puedes emplear dpkg o apt (recuerda anteponer sudo o trabajar con privilegios root):

Dpkg –i nombre_paquete.deb

o

Apt-get install nombre_paquete

Aptitude es otra herramienta bastante completa que puedes usar tecleando lo siguiente:

aptitude install nombre_paquete

Otros gestores de paquetes de tu distro:

Arch Linux y derivados emplea un gestor de paquetes denominado pacman. Fue creado por Judd Vinet y es capaz de resolver dependencias de forma automática. Para instalar un paquete con este gestor:

pacman –S nombre_paquete

Portage es otro de los grandes gestores de paquetes de por ejemplo Gentoo. Presenta similitudes con los Ports de BSD y es compatible con POSIX y el entorno python. Además también lo emplea FreeBSD. Para instalar un paquete con él:

emerge nombre_paquete

Paldo es un sistema operativo con kernel Linux que usa un gestor de paquetes upkg. Fue creado por Jürg Billeter y para instalar con él debes escribir:

upkg-install nombre_paquete

En la distro Pardus Linux se emplea un sencillo gestor de paquetes escrito en Python y conocido como PiSi. Emplea LZMA y XZ para comprimir los paquetes y sobre todo llama la atención la tecnología Delta, que permite descargar solo las diferencias entre los paquetes para ahorrar ancho de banda. Instala así:

pisi install nombre_paquete

caja Tar Tux

Cómo instalar tarballs:

Los paquetes que se instalan directamente desde la fuente se empaquetan con la primitiva, pero aun útil y eficiente, herramienta Tar (de ahí el nombre tarball) y luego se comprimen empleando algún tipo de formato comprimido.

Algunos paquetes de este tipo vienen con ficheros en su interior tipo .jar, .bin, .rpm,…, en ese caso tan solo hay que desempaquetar y emplear el procedimiento correcto para el binario que alberga. Pero por lo general es código fuente que hay que compilar e instalar.

Veamos como. Lo primero, cuando trabajamos desde la consola, es situarnos en el directorio donde se encuentra el paquete con el que queremos trabajar. Para ello utilizamos la herramienta “cd”. Por ejemplo, si te has descargado un paquete y lo tienes en la carpeta Descargas, teclea en el terminal:

cd Descargas

Y el prompt cambiará con esa ruta para indicarte que estás dentro de este directorio del sistema. También debes recordar que necesitas privilegios para ejecutar ciertas acciones como ./configure, make, o make install… que veremos a continuación.

tar.gz o tgz:

Estos tipos de tarball es muy empleado en Slackware y derivados, aunque se ha extendido para empaquetar código para el resto de distribuciones. Su instalación es así (recuerda ejecutar ./configure, make y make install con privilegios, ya sabes, como root o anteponiendo sudo al comando…):

cd directorio_donde_se_encuentra_el_tarball
tar –zxvf nombre_paquete.tar.gz (o nombre_paquete.tgz, en caso de ser un .tgz)
cd nombre_paquete_desempaquetado
./configure
make
make install

Si esto no funcionara, puedes acceder al directorio desempaquetado para comprobar si existe algún fichero de texto con las instrucciones para instalarlo. A veces, cuando no siguen este procedimiento estándar, los desarrolladores incluyen este tipo de ficheros para explicarte las particularidades, dependencias, etc.

Tar.bz2 o .tbz2:

Se trata de un paquete muy empleado en BSD y que también se ha extendido a Linux y otros *nix. Es un empaquetado con tar y comprimido utilizando BSD Zip 2. El procedimiento para instalar este tipo de programas es:

cd directorio_donde_se_encuentra_el_paquete
tar –jxvf nombre_paquete.tar.bz2 (o nombre_paquete.tbz2, e incluso nombre_paquete.tbz)
cd nombre_directorio_desempaquetdo
./configure
make
make install

Así debería bastar para instalar. Asegúrate que usas privilegios para los últimos comandos.

Otros Tape Archive:

En ocasiones se emplea un tape archive o fichero tar sin compresión. Este tipo de paquetes mantiene la información necesaria para restaurar totalmente los ficheros que contiene y para desempaquetarlo tan solo hay que hacer esto:

tar xvf nombre_paquete.tar

Luego busca un fichero con nombre README.txt (o similar) dentro del directorio desempaquetado y busca las instrucciones de instalación. Normalmente se trata de hacer un procedimiento similar a los anteriores…

Tar.xz o .xz o .txz:

Ultimamente estoy viendo más de este tipo. Para operar con este tipo de paquetes hay que tener la herramienta xz-utils instalada. Para desempaquetarlos e instalarlos se emplea:

tar Jxvf nombre_paquete.tar.xz

o

Xz –d nombre_paquete.tar.xz
Tar –xf nombre_paquete.tar

o

Unxz nombre_paquete.xz

Y una vez descomprimido se busca un fichero README.txt o INSTALL.txt para ver los detalles de la instalación, que por lo general es la típica ./configure, make y make install. Aunque a veces puede emplearse cmake.

.gz o .gzip o .bzip2:

Con GNU Zip se pueden comprimir paquetes de tipo .gz o .gzip. Estos son tratados de forma similar a los paquetes comprimidos con BSD Zip 2 con extensión .bzip2. Para tratar este tipo de paquetes debemos tener disponibles las herramientas unzip y bunzip2 en nuestro sistema:

gunzip –c nombre_paquete.gz
bunzip2 nombre_papuete.bz2

El resto es similar a los pasos vistos con los tarballs anteriores… Asegurate de ver los ficheros README o INSTALL presentes.

.tar.lzma, .tlz:

Tanto si aparece por su nombre largo, .tar.lzma, como si aparece por su nombre corto .tlz, estos paquetes utilizan el algoritmo de compresión Lempel-Ziv-Markov y para extraerlos e instalarlos, debes teclear en la consola (previamente se necesita tener instalado el paquete lzma):

unlzma nombre_fichero.lzma

o

lzma -d file.lzma

o

tar --lzma -xvf file.tlz

o

tar --lzma -xvf file.tar.lzma

Dependiendo del formato en el que se nos presente el paquete. Luego puedes mirar algún fichero de texto en su interior con instrucciones o seguir los pasos que hemos descrito para instalar los otros tarballs (./config, make, make install). Otra buena práctica es mirar en la web del desarrollador, donde aparecen tutoriales de como se instalan los paquetes o existen sitios Wiki con multitud de información.

*Nota: también puedes instalar ciertos paquetes empaquetados con una herramienta denominada installpkg.

Cómo instalar paquetes binarios:

.jar:

Para instalar paquetes java es bastante sencillo. Los requisitos son evidentes, tener instalada la máquina virtual Java de Oracle (ya sea la JRE o JDK). Para instalarlo debemos hacer clic con el botón derecho del ratón sobre él y seleccionar “Abrir con otra aplicación” en el menú desplegable. Aparecerá una ventana con una lista de aplicaciones de nuestro sistema y una línea de formulario abajo para escribir una. Pues en dicho espacio escribes “java –jar ” sin comillas, incluido el espacio tras jar que he dejado yo. Luego presionas sobre el botón “Abrir” y se debería ejecutar sin problema. Como puedes comprobar no es necesario instalarlo.

.bin:

Los podemos ejecutar haciendo doble clic sobre ellos para abrirlos, si previamente le hemos dado permisos de ejecución. Para ello haz clic con el botón derecho del ratón sobre el fichero y luego ve a “Propiedades” para asignarle permisos de ejecución en la pestaña “Permisos”. También se puede instalar desde la consola haciendo lo siguiente:

cd directorio_donde_está_el_binario
./nombre_binario.bin

.run:

Para los .run procederemos de forma similar a los .bin. Este formato es muy utilizado para drivers, como por ejemplo los AMD Catalyst Center. Para instalarlo se puede usar la consola:

cd directorio_donde_está_el_paquete
sh ./nombre_paquete.run

Recuerda asignarle previamente permisos de ejecución. Además, algunos necesitan ejecutarse con privilegios, en tal caso hazlo como root o con sudo.

Si quieres instalar el .run en modo gráfico, puedes hacer clic con el botón derecho del ratón sobre él y seleccionas “Propiedades”, luego en la pestaña “Permisos” marcas “Permitir ejecutar el archivo como un programa” y aceptas para cerrar. Ahora al hacer doble clic sobre el .run verás que se abre un instalador muy similar a los de Windows (tipo Siguiente, Siguiente, Aceptar…).

Mosaico "script" fondo negro

Cómo instalar scripts:

.sh:

En Linux también podemos encontrar scripts con extensiones .sh o los .py. Para instalar este tipo de scripts nos dirigiremos al directorio donde se cuentra el script con el comando “cd” como hemos visto anteriormente. ¡Ojo! Si el script estuviese empaquetdo, primero desempaquetalo o descomprímelo. Luego, puedes darle permisos de ejecución como ya sabes (puedes hacerlo en modo gráfico o desde el terminal con el comando “chmod +x nombre_script” sin comillas). Una vez tengan permisos de ejecución, desde el terminal:

sh nombre_script.sh

o

./nombre_script.sh

.py:

Para los ficheros con extensión .py se debe llamar al interprete del lenguaje de programación Python. Para ello, teclea en la consola esto:
python nombre_script.py install

Otros:

Existen otros tipos de ficheros y paquetes para instalar. Ciertos paquetes de BSD, Solaris, Mac OS X, y otros *nix se pueden instalar en Linux. Un ejemplo de ello son los .pkg de Solaris. Para instalar los .pkg se puede hacer clic sobre ellos con el botón derecho del ratón, ir a “Propiedades” y “Permisos” y asignarle permisos de ejecución. Luego haces doble clic sobre ellos para instalarlos.

También existen herramientas como Alien para convertir de un formato a otro, por ejemplo de rpm a deb, etc. Esto no es muy recomendable y en ocasiones puede generar problemas. Así que no te lo recomiendo.

Continuando con el galimatías de los paquetes en Linux, decir que existen más de los vistos aquí, pero son más raros e inusuales. Un ejemplo de rareza es el .slp que usan desde el proyecto Stampede Linux. Para transformar .slp en otros formatos más cotidianos puedes emplear Alien (previamente instalado Alien) así:

sudo alien nombre_paquete.slp nombre_paquete.extensión_nueva generated

Por ejemplo, para transformar de .slp a rpm:

sudo alien miprograma.slp miprograma.rpm generated

Pueden dejar sus comentarios con peticiones, dudas o comentarios. Si tienen algún problema siguiendo los pasos de este tutorial, Estaré encantado de ayudaros.

El artículo Tutorial: ¿Cómo instalar cualquier paquete en GNU/Linux? ha sido originalmente publicado en Linux Adictos.




Deja un comentario

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