Apt-* o Aptitude, cual usar?

Apt (Advanced Packaging Tool) se utiliza básicamente para la instalación y desinstalación de paquetes en GNU/Linux. Los que usamos Debian y derivados, lo usamos normalmente, aunque también podemos usar Aptitude.

¿Sabes cual es la diferencia entre ambos? Yo tampoco las conocía, así que me puse a investigar un poco y a realizar algunos experimentos. Acá les muestro el resultado.

Aptitude.

Se dice que Aptitude es una versión mejorada de Apt y gestiona mucho mejor las dependencias de los paquetes y que incluso, es recomendado por Debian. Aptitude incluye muchas más opciones que Apt, veamos las más usadas y su descripción según la ayuda de aptitude.

install : Instalar uno o más paquetes. Los paquetes deben aparecer después de la orden “install”.
remove, purge, hold, unhold, keep, reinstall : Estas órdenes realizan lo mismo que “install”, pero en este caso la acción nombrada afectaría a todos aquellos paquetes en la línea de órdenes que no la invaliden.
update : Actualizar la lista de paquetes disponibles desde las fuentes de apt (equivale a “apt-get update”).
safe-upgrade : Actualizar los paquetes instalados a su versión más reciente. Los paquetes instalados se eliminarán a menos que no se usen.
full-upgrade : Actualizar paquetes instalados a su versión más reciente, instalando o eliminando paquetes si es necesario. Esta orden es menos conservadora que safe-upgrade, y por ello más proclive a ejecutar acciones no deseadas. Sin embargo, es capaz de actualizar paquetes que safe-upgrade es incapaz de actualizar. Por razones históricas, la orden se llamaba originalmente dist-upgrade, y aptitude aún reconoce dist-upgrade como sinónimo de full-upgrade.
search : Buscar paquetes que coincidan con uno de los patrones introducidos en la línea de órdenes.
show : Mostrar información detallada relativa a uno o más paquetes, listados de acuerdo a la orden «search».

Para ver más información sobre aptitude y sus opciones, podemos recurrir a una de las mejores formas de encontrar ayuda, poniendo en consola:

$ man aptitude

Apt

En el caso de Apt, se hace uso mediante los comandos: apt-cache, apt-get, apt.conf, apt_preferences, apt-secure, siendo los 2 primeros los más utilizados. Las opciones que incluye son las siguientes:

update : update se usa para sincronizar el índice de paquetes desde sus fuentes.
upgrade : upgrade se usa para instalar la versión más nueva de todos los paquetes instalados en el sistema provenientes de alguna de las fuentes listadas en /etc/apt/sources.list.
dist-upgrade : Además de realizar las acciones de upgrade, trata inteligentemente los cambios de dependencias debidos a las nuevas versiones de paquetes.  apt-get tiene un sistema «inteligente» de resolución de conflictos, y si es necesario tratará de actualizar los paquetes más importantes a costa de los menos importantes.
install : Instala o actualiza los paquetes que siguen a la palabra «install».
remove :  Se comporta del mismo modo que install con la diferencia de que elimina los paquetes en vez de instalarlos. Tenga en cuenta que al eliminar un paquete sus ficheros de configuración se quedan en el sistema. Si un signo de suma precede al nombre del paquete (sin ningún espacio en blanco entre los dos), el paquete en cuestión será instalado en vez de eliminado.
purge :  Es idéntico a remove, con la diferencia de que los paquetes se eliminarán y purgarán (se eliminará también cualquier fichero de configuración).

Para ver más información sobre aptitude y sus opciones, podemos recurrir a una de las mejores formas de encontrar ayuda, poniendo en consola:

$ man apt-get.

¿Cual es la diferencia entonces?

En realidad todo depende del uso que le dé cada cual y lo que necesite hacer. Particularmente siempre uso aptitude, pues tiene muchas más opciones, pero en el caso de que tenga que realizar búsquedas, apt-cache me resulta más interesante. Además, aptitude tiene una interfaz en consola:

He leído en algunos lugares que aptitude también te instala las dependencias sugeridas, y que apt-get solo instala las recomendadas. Sin embargo si probamos a instalar Audacious por ejemplo, veremos que instala los mismos paquetes.

Veamos a la hora de instalar audacious con aptitude:

sudo aptitude install audacious
Se instalarán los siguiente paquetes NUEVOS:
  audacious audacious-plugins{a} libaudclient2{a} libaudcore1{a} libbinio1ldbl{a} libcue1{a} libfluidsynth1{a} 
  libmcs1{a} libmowgli2{a} libresid-builder0c2a{a} libsidplay2{a} unzip{a} 
0 paquetes actualizados, 12 nuevos instalados, 0 para eliminar y 0 sin actualizar.
Necesito descargar 3494 kB de ficheros. Después de desempaquetar se usarán 11,0 MB.

y ahora con apt-get:

sudo apt-get install audacious
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Se instalarán los siguientes paquetes extras:
  audacious-plugins libaudclient2 libaudcore1 libbinio1ldbl libcue1 libfluidsynth1 libmcs1 libmowgli2 libresid-builder0c2a
  libsidplay2 unzip
Paquetes sugeridos:
  libmcs-backend-gconf libmcs-utils zip
Se instalarán los siguientes paquetes NUEVOS:
  audacious audacious-plugins libaudclient2 libaudcore1 libbinio1ldbl libcue1 libfluidsynth1 libmcs1 libmowgli2
  libresid-builder0c2a libsidplay2 unzip
0 actualizados, 12 se instalarán, 0 para eliminar y 0 no actualizados.
Necesito descargar 3494 kB de archivos.
Se utilizarán 11,0 MB de espacio de disco adicional después de esta operación.

Para ver otra diferencia podemos hacer una búsqueda. Por ejemplo, abran un terminal y escriban:

aptitude search ipod

y luego

apt-cache search ipod

Como podrán apreciar la búsqueda con apt-cache fué la más satisfactoria. En el caso de aptitude, solamente buscó por el nombre del paquete, sin embargo, apt-cache buscó todos los programas o paquetes que guardan relación con la palabra ipod, seguramente por la descripción de cada paquete.

Conclusiones

Usa el que más cómodo te sea. A mi me resulta más fácil usar aptitude porque es un solo comando, sin embargo con apt tengo que usar apt-get o apt-cache según sea el caso. Si conoces alguna otra diferencia, déjala en los comentarios 😀


Deja tu comentario

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

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Yoyo dijo

    Siemre le he sido fiel a aptitude 😉

    1.    elav <° Linux dijo

      Ya somos 2 😀

  2.   mcder3 dijo

    Les falto «aptitude purge nombredenpaquete» para eliminar el paquete + las dependencias + las configuraciones del paquete (nivel root)

    Muy buena la entrada y felicidades por el blog 😛

    Saludos

    1.    mcder3 dijo

      ya lo vi lol… sorry por poner lo de «aptitude purge» XD

      1.    KZKG^Gaara dijo

        Nada, no te preocupes ^-^
        Gracias por tus comentarios, pues la intención estoy seguro que era ayudar 😉
        Saludos y sigue pasándote por acá 🙂

      2.    elav <° Linux dijo

        No hay problema.. Gracias por querer ayudar.. 😀

  3.   Jesus Ballesteros dijo

    Cuando uso Debian también prefiero aptitude, me da mas confianza :). Pero también concuerdo contigo en que apt-get es mas efectivo a la hora de hacer busquedas. No se si aptitude algún día empleará algo similar a apt-cache o quizás en un futuro elimien apt-get y dejen aptitude y apt-cache :P…

  4.   Julio dijo

    Hasta ahora había utilizado APT-GET, voy a aprobar APTITUDE a ver…

  5.   jose luis mantilla dijo

    Claro que hay una diferencia muy Notable!!

    Apt: te installa el paquete con las librerias requeridas

    Aptitude: te instala las requeridas, sugeridas y antes de instalarse verifica que no dañe otro paquete que comparte librerias de otras versiones, antes de instalarse te soluciona conflictos existentes entre aplicaciones que incluso corren el mismo puerto o que tienen algo mal en su configuracion y te pregunta como deseas solucionarlo con sus respectivas sugerencias y explicacion y finalmente con Aptitude NUNCA tendras paqueterias rotas (no necesitarias el clean ni autoclean ni el apt -f install para corregir), esto funciona asi desde el 6,5 y 7!!

    Buen dia y para servirles (saludos desde Colombia)

  6.   channel unknown dijo

    Hola.
    ¿Y cuál es el comando APT install?, noto que ese lo mencionan en el Tutorial pdf que dispone Linux Mint en su web.
    Y su autor recomienda no hacer apt-get upgrade de Actualizaciones por Terminal, ya que esta no filtra qué tipo de niveles de estabilidad pertenecen, como si lo dispone el Actualizador con interfaz gráfica de Mint.

  7.   Franco dijo

    Aún sabiendo esto, utilizo apt-get con más frecuencia que aptitude. Pero se que el gestor de paquetes synaptic utiliza aptitude cada vez que instalas algo en modo gráfico.

  8.   pepo dijo

    Desde hace bastantes años el comando APT incluye las funcionalidades de apt-get y de apt-cache, de modo que podemos hacer «apt install paquete» y «apt search paquete» en sustitución de «apt-get install paquete» y «apt-cache search paquete» respectivamente.