En este tutorial vamos a ver cómo gestionar paquetes en Linux. Trataremos de entender lo mejor posible como instar programas, desinstalarlos y compilarlos nosotros mismos para optimizarlos con nuestro equipo.
Como nos podremos imaginar, Linux funciona de distinta forma a Windows, y la gestión de paquetes para la instalación de programas es sustancialmente distinta. Si bien es cierto que podremos hacer muchas acciones de forma gráfica, conviene aprender a movernos con soltura en este tema desde nuestro terminal de comandos.
La gestión de paquetes consiste descargar determinados archivos con el objetivo de instalar programas adicionales en nuestro sistema operativo, como si se tratase de un programa más para utilizarlo, bien en modo comando, o bien en modo gráfico.
Podemos decir que un paquete es un conjunto de ficheros que están relacionados entre sí para dar forma a una aplicación. Un paquete contendrá ejecutables, ficheros de configuración e información de ayuda para trabajar con él. Todo ello estará contenido en un paquete que puede ser de extensión DEB, RPM, TGZ, etc.
En la mayoría de casos, las distribuciones de Linux ya cuentan con gestores de paquetes incorporados al sistema. Estos programas, lo que hacen es ayudarnos a instalar, desinstalar o configurar un paquete para poder utilizarlo de la forma más sencilla posible. Además, estos sistemas de control de paquetes encontrarán de forma automática las dependencias entre paquetes para que, a la hora de instalarlos, estos queden funcionando correctamente y sin la falta de otros paquetes que serán necesarios para que el que nos ocupa funcione.
Existen muchas distribuciones de Linux, y estas están basadas principalmente en dos núcleos o kernels, el de Debian y el de Red Hat. Es por esto que podremos encontrar distintos tipos de paquetes en función de la distribución en la que estemos trabajando.
Para nosotros obtener un paquete de instalación de un programa, tendremos que dirigirnos, de forma manual a la página web del creador. Este dispondrá normalmente de paquetes instalación como deb o rpm, o en su caso, paquetes de binarios que nosotros mismos tendremos que descomprimir y compilar.
Otra forma de obtener estos paquetes directamente desde los repositorios de cada sistema. Un repositorio es un lugar en donde se almacenan los paquetes de instalación para las distintas distribuciones Linux. En este repositorio encontraremos la enorme mayoría de paquetes de programas que podremos instalar en nuestro sistema Linux. Y lo más interesante es que será el mismo gestor de paquetes el que acceda al repositorio y busque todos los paquetes que necesite para instalar un programa.
Por supuesto, existe un fichero en el que se almacenan todos estos repositorios a las que accederá nuestro gestor de paquetes de forma automática para buscar el programa que queramos instalar.
El fichero en donde se almacenan, lo encontraremos, en el caso de Ubuntu en /etc/apt/sources.list. Para acceder a su contenido y editarlo escribiremos con permisos de root:
# nano /etc/apt/sources.list
Aquí veremos cómo los enlaces coloreados son los que están activados y funcionales para que el gestor de paquetes acceda a ellos. Pero además podremos activar otros de ellos que tienen delante el carácter “#”, borrando este.
Nota que ahora hay más de ellos coloreados en verde, por lo que también serán usados en la búsqueda. Además, podremos colocar un repositorio externo en este fichero, para que podamos acceder a él, en caso de que el programa que buscamos no se encuentre en ellos.
Además de los repositorios de los que ya disponemos en el propio sistema de forma nativa, también podremos añadir otros personalizados, por ejemplo, de algún programa que no se encuentre dentro de los repositorios disponibles.
En este caso nos tocará visitar Internet o la página web del programa para conocer más información hacerca de su repositorio particular. La URL la añadiremos al fichero sources.list y luego tendremos que actualizar la información con el comando:
sudo apt update
Los paquetes DEB son los paquetes de software que vamos a encontrar en las distribuciones basadas en Debian. Estos sistemas tienen su propio gestor de paquetes instalado de forma nativa, y su nombre de APT.
Son las siglas de Advanced Packaging Tool y es un completo gestor de paquetes con el que podremos instalar todo tipo de paquetes de software que funcionen en Debian a través de la consola. Dentro del gestor APT tenemos unificadas todas la funcionales de otros gestores como apt-get y apt-cache.
Como cualquier otro comando de Linux, dispondremos de información extremadamente completa y en español de este comando si colocamos en el terminal:
apt --help
Este comando deberá de utilizarse con permiso de root, ya que estamos realizando modificaciones directas en el sistema. Opciones:
Para utilizarlo solamente debemos de seguir la sintaxis básica con permisos de root:
apt install <nombre_de_paquete>
apt upgrade
apt list <nombre paquete>
Para instalar un programa con apt, el procedimiento general será buscar el nombre del paquete, bien con la opción “list” o “search” en los repositorios desde nuestro terminal, o bien dirigirnos al sitio web oficial del programa para localizar el nombre del paquete en los repositorios o descargar el paquete de forma manual.
Además del comando apt, también podremos utilizar otros disponibles en nuestro sistema:
apt-get
Otro gestor de paquetes muy completo, con multitud de opciones interesantes para poder gestionar nuestros paquetes. Con este comando, podremos reinstalar paquetes, resolver dependencias, buscar paquetes, actualizarlos, etc. Dispone de incluso más opciones que apt y podremos verlas todas mediante apt-get –help
aptitude
Comando muy completo para la gestión de paquetes. Este programa también instala directamente desde lo repositorios y tiene un mejor control de las dependencias de los paquetes que apt y apt-get, por lo que recomendamos su uso. Una de las posibilidades más interesantes de este comando, es que, si lo escribimos sin opciones en el terminal, aparecerá una interfaz interactiva en el propio terminal.
sudo aptitude
Si no está disponible en nuestro sistema, lo podremos instalar fácilmente:
sudo apt-get install aptitude
Para los sistemas basados en Red Hat, también tendremos nuestro propio gestor de paquetes que se encargará de resolver las dependencias e instalar todo tipo de paquetes de los repositorios de los sistemas operativos, SuSE, Fedora, Mandriva, etc.
La idea es exactamente la misma, aunque en este caso las opciones del comando son algo menos intuitivas:
Algunos ejemplos serían:
rpm -ivh <paquete>.rpm
rpm -qi <paquete>
rpm -e <paquete>
Finalmente tenemos los paquetes más complicados de gestionar, que son los que vienen disponibles mediante su código fuente. Como dijimos anteriormente, estos ficheros necesitaremos compilarlos nosotros mismos para proceder a instalarlos. La ventaja es que estarán completamente adaptados a nuestro equipo, y la desventaja que el procedimiento es algo más complejo que simplemente descargarlos de un repositorio. También es cierto que las últimas versiones de un software siempre saldrán antes en este tipo de ficheros, y no necesitaremos esperar a que estén disponible en el repositorio.
Este tipo de paquetes suelen venir comprimidos, casi siempre en extensión “.tar.gz” o “.tar.bz2”, es decir, empaquetado con tar y comprimido con gzip o bzip2. Nosotros vamos a llevar a cabo un ejemplo de cómo se realizaría todo el procedimiento de instalación de uno de estos paquetes para el programa Amule.
Lo primero será descargar el paquete comprimido de la página web del creador. En este caso, los paquetes vienen extensión tar.bz2. Nosotros nos vamos a descargar la última versión disponible, la 2.3.2.
Pues bien, una vez descargado, vamos a elevarnos a root y vamos a entrar en el directorio en donde hemos descargado el fichero.
sudo su
cd /home/ayudalinux/Descargas
Ahora vamos a descomprimir el paquete con el comando tar:
tar -jxf aMule-2.3.2.tar.bz2
Extraemos (x) el fichero (f) tipo bzip2 (j) en el mismo directorio en donde nos encontramos.
Ahora conviene siempre leer los ficheros de documentación para saber si debemos tener algo en cuenta o no antes de instalar., Normalmente dispondremos de dos ficheros de información “INSTALL” y “README”. Aunque en este caso solamente tenemos el de README.
cd aMule-2.3.2
ls
cat README.Debian-Packges
En estos ficheros, normalmente se encuentra información importante sobre qué dependencias tendremos que instalar para que el programa se compile y configure correctamente. Si no vemos nada, lo que tendremos que hacer es comenzar el procedimiento. Para ello, siempre dispondremos de un fichero “configure”, que será el encargado de preparar los binarios para la instalación.
./configure
Vemos que nos han salido varios errores, concretamente no se han encontrado algunas librearías. Esto significa que tendremos que proceder a buscarlas o instalarlas para que el fichero de configuración se complete correctamente.
Si no sabemos que librearía es, lo mejor será buscarla con el comando apt, o en Internet.
# apt install libwxgtk3.0-dev
# apt search libupnp
Vemos en una lista algunas librerías con este nombre. Vamos a instalar la que parece ser la principal:
# apt install libupnp-dev
Ejecutamos de nuevo ./configure
Parece que uno de los problemas está solucionado, vamos a por el siguiente:
# apt search libcrypto
# apt search libcrypto++-dev
Probamos de nuevo… Ahora parece que el fichero de configuración se ha completado correctamente. Vamos al siguiente paso, que será compilar el paquete:
# make
Y luego, para instalarlo:
# make install
Es posible que también mientras hacemos esto, salten errores en la compilación, ya que a veces es necesario añadir opciones extras en estos comandos. Todo ello tendría que estar reflejado en la documentación README o INSTALL. Cada programa tendrá sus peculiaridades, pero el procedimiento a seguir casi en todas las ocasiones este precisamente éste.
Como veis, es bastante menos problemático instalar con el gestor de paquetes nativo que compilando, pero conseguiremos, por así decirlo crear un programa a nuestro gusto, ya que podremos modificar opciones directamente desde el código fuente.
Esto es todo acerca de la gestión de paquetes en Linux, en función de la distribución que tengamos, utilizaremos rpm o apt o en su caso, tendremos que compilar. Esperamos que este tutorial haya sido de utilidad para aprender mejor los distintos procedimientos que hay para gestionar paquetes de software.
Esta web utiliza cookies propias con finalidad funcional y de terceros para realizar el análisis de la navegación de los usuarios, mejorar mis servicios y mostrarte publicidad relacionada con tus preferencias mediante el análisis de tus hábitos de navegación. Si continúa navegando, se considera que acepta su uso.
Leer más