it-swarm.dev

¿Cuál es la diferencia entre los administradores de paquetes?

¿Cuáles son las diferencias entre apt-get, aptitude y synaptic, y cuál es la opción recomendada para la administración normal de paquetes del día a día?

Esta es una pregunta básica, pero creo que sería buena información tenerla en el sitio, y además, soy relativamente nuevo en Ubuntu para poder usar una explicación experta.

129
David Z

Probablemente los gestores de paquetes más populares son apt-get, aptitude, synaptic y Software Center. Hay otros (Linux Mint tiene el suyo, y hay algunos diseñados para KDE), pero estos son los que encontrará con más frecuencia.

apt-get es una herramienta simple de línea de comandos. Es útil si conoce el nombre exacto del paquete de lo que desea instalar y no desea pasar tiempo haciendo clic en una GUI para obtenerlo.

aptitude es muy similar a apt-get, y he oído que trata mejor con situaciones de dependencia locas. Cuál es realmente mejor es discutible.

sináptico es una GUI de bajo nivel. Esta es una buena opción si es un usuario bastante avanzado pero no se siente cómodo con las utilidades de línea de comandos.

Software Center es una GUI de alto nivel y fácil de usar. El software está bien categorizado de modo que, si no está exactamente seguro de qué aplicación desea, puede encontrar lo que necesita rápidamente. El Centro de software también se destaca porque es el único administrador de paquetes en esta lista que le permite comprar aplicaciones comerciales.

dpkg es un estándar de administrador de paquetes de bajo nivel menos utilizado para la mayoría de los sistemas basados ​​en Debian. En realidad, apt-get, aptitude, synaptic y el Centro de software de Ubuntu son solo front-end para dpkg o apt, que es en sí mismo un front-end para dpkg.

En respuesta a su pregunta, "cuál es la opción recomendada para la administración normal de paquetes del día a día", diría que Software Center se recomienda para la mayoría de los usos. Pero a medida que gane más experiencia, encontrará útiles algunas de las características de los administradores de paquetes de nivel inferior.

111
Michael Crenshaw

Preguntas frecuentes sobre Debian tiene una muy buena explicación de los diferentes administradores de paquetes. (dpkg, apt-get, aptitude, tasksel, synaptic)

18
lfaraone

Como una adición a la excelente respuesta de mac9416 , Kubuntu ofrece las mismas herramientas de línea de comandos que Ubuntu, a saber, dpkg, apt-get y aptitude. También hay dos administradores de paquetes gráficos:

Adept es una GUI sencilla para apt-get, que le permite editar las listas de origen, buscar paquetes por categoría o por nombre, ver su estado e instalar/desinstalar ellos.

KPackageKit es una GUI simple para PackageKit, que es un nuevo sistema de administración de paquetes de distribución cruzada que utiliza apt-get detrás de escena. Le permite buscar programas por diversos criterios, instalar y desinstalar programas, realizar actualizaciones de rutina y editar las listas de origen.

13
David Z

Personalmente prefiero apt-get porque es un programa de línea de comandos. Y la sintaxis para instalar paquetes es muy simple:

 Sudo apt-get install nombre del paquete

Utilizo apt-get a diario para instalar y eliminar paquetes.

Synaptic está basado en GUI y la aptitud está basada en texto.

6
Nathan Osman

Básicamente, solo difieren en su nivel bajo.

dpkg: ni siquiera un administrador de paquetes adecuado, apt lo usa

apt-get: línea de comandos, solo si conoce el nombre del paquete

aptitud: basado en texto, pero fácil de usar

sináptico: equivalente de aptitud en GUI

Centro de software: para usuarios cotidianos

Por cierto, todos estos son front-end de apt (excepto dpkg), que es el único administrador de paquetes en Ubuntu.

5
Sőrés Viktor

Una diferencia clave entre aptitude y apt-get que se ha escapado de la notificación anterior es que aptitude, a diferencia de apt-get, le ofrecerá diferentes opciones en caso de que haya un choque de dependencias. apt-get simplemente fallará. aptitude es mucho más flexible y versátil por esa razón. Como nunca he usado un administrador de paquetes GUI, no sé cómo Synaptic y otros manejan tales situaciones.

1
ShankarG

Otra herramienta que apenas ha recibido mención es tasksel. Se utiliza para seleccionar tareas específicas, marcarlas para la instalación y luego instalarlas (posiblemente usando aptitude, no estoy seguro).

Ejecute tasksel --list-tasks para ver qué tareas están disponibles.

1
Tshepang