Saltar a contenido

Gestión de paquetes

Formatos

RPM → Formato desarrollado por Red Hat

DEB → Formato desarrollado por Debian

Un fichero deb o rpm es un fichero comprimido con información como autor, versión, tags, dependencias, con que es incompatible etc… es una forma de distribuir el software y su instalación en el sistema.

Instaladores de paquetes

apt
apt-get
aptitude
dselect
Synaptic - en modo gráfico
dpkg es el último escalón, todos acaban tirando de dpkg

apt-get → comando para instalar programas que están en los repositorios, los repositorios están definidos en el fichero /etc/apt/sources.lst, se puede modificar este fichero a manija pero entonces es necesario realizar un apt-get update para act. la bd local.

Formato del fichero:

    deb → paquetes precompilados para debian
    URL → de donde descargará el paquete
    main → forma parte del core debian
    contrib → contribuciones
    non-free → No de libre distribución
    deb-src → código fuente
    # deb cdrom:[Debian GNU/Linux 8.5.0 _Jessie_ - Official Multi-architecture amd64/i386 NETINST #1 20160604-19:56]/ jessie main

    #deb cdrom:[Debian GNU/Linux 8.5.0 _Jessie_ - Official Multi-architecture amd64/i386 NETINST #1 20160604-19:56]/ jessie main

    deb http://ftp.es.debian.org/debian/ jessie main
    deb-src http://ftp.es.debian.org/debian/ jessie main

    deb http://security.debian.org/ jessie/updates main
    deb-src http://security.debian.org/ jessie/updates main

    # jessie-updates, previously known as 'volatile'
    deb http://ftp.es.debian.org/debian/ jessie-updates main
    deb-src http://ftp.es.debian.org/debian/ jessie-updates main

Comandos básicos

apt-get update → cuando cambiemos el fichero de repositorios para cargar las nuevas listas

apt-get upgrade → actualiza paquetes

apt-get -source → obtiene el paquete con el código fuente en /usr/src

apt-get dist-upgrade → actualiza la distribución, ojo que es un proceso complejo y puede no funcionar.

apt-get install algo → para instalar un paquete, se descarga automáticamente en /var/cache/apt/archives

apt-get clean → para borrar la cache de archivos descargados por instalación

apt-cache search autocad → buscar aplicaciones disponibles en los repositorios

Aptitude → es como synaptic en modo texto

aptitude search → buscar aplicaciones, solo busca en el nombre por lo que se recomienda usar apt-cache search

No se puede verificar la autenticidad del repositorio X

En este caso será necesario agregar la clave PGP al sistema.

:::bash
wget -o “http://ur.donde.llave” | apt-get key add - #(el - cogerá la llave  del wget)

Instalación de un paquete que no está en los repositorios

wget paquete debian → obtenemos el paquete

dpkg -L paquete → ver lo que va a instalar en el disco

lo instalamos con: dpkg -i nombrepaquete

si aparecen errores de dependencias, la instalación se quedará en un estado inconsistente, para solucionarlo ejecutamos:

:::bash
apt-get -f install # arreglará problemas de dependencias al instalar un paquete con dpkg y lo dejará ya instalado.

dpkg -r → para eliminar un paquete

dpkg -l → para listar los paquetes instalados (ii quiere decir instalado y ir installed removed)

dpkg -l | grep -i figlet

Ejemplo - Monitorix

Monitorix es un software para monitorizar servidores disponible en www.monitorix.com

descargamos desde la web el paquete debian o bien hacemos un wget

dpkg -i /home/javier/Descargas/monitorix_3.8.1-izzy1_all.deb

A mitad de la instalación nos dirá que necesita Perl y unas cuantas librerias y dependencias, con lo que la operación quedará sin terminar. Para resolver los problemas de instalación ejecutamos

:::bash
apt-get -f install # finalizar el proceso de instalación.

Por ej. para instalar Elastic Search tendremos diferentes alternativas:

  • Descargamos de su web el fichero .deb

  • Incluimos en los repositorios:

    :::bash
    wget -o “https://packages….” | apt-key add -
    echo “deb https://packages…. debian stable main | tee -a /etc/apt/elasticsearch.list
    

Es habitual tener los repositorios separados:

sources.list.d/elasticsearch.list

basta colocarlos en la carpeta sources.list.d y se realizará su inclusión

Nota

Los paquetes ubuntu en debian y viceversa puede hacerse pero no es lo mas recomendable, podría haber discrepancias.

Se pueden convertir paquetes RPM a deb y viceversa con una herramienta llamada alien

Según el fabricante de software es posible encontrar siempre la ultima versión siguiendo una norma por ej. WordPress siempre tiene el mismo fichero /latest.tar.gz que permite su inclusión en un script.

Mas comandos relacionados

Software para automatización de infraestructura

Ansible

puppet

cheff

recomendable ansible, curva de aprendizaje menor que en puppet y es muy complejo.


Última actualización: 2020-12-17