He estado pensando en cambiar a aptitude, pero escuché que la gente decía "si ya estás usando apt-get, debes esperar hasta tu próxima instalación para cambiar". ¿Por qué la gente dice esto? ¿Qué tipo de problemas (si alguno) puede causar?
He estado pensando en cambiar a aptitude, pero escuché que la gente decía "si ya estás usando apt-get, debes esperar hasta tu próxima instalación para cambiar". ¿Por qué la gente dice esto? ¿Qué tipo de problemas (si alguno) puede causar?
apt-get y aptitude son diferentes IU que forman parte del mismo sistema de administración de paquetes, APT, la herramienta de empaquetado avanzada . Por ejemplo, ambos se configuran usando /etc/apt/apt.conf, ambos usan el mismo espacio de archivos y formatos para representar el estado del paquete, y el mismo espacio de archivos para almacenar .debs descargados.
En qué se diferencian es su sistema de reglas internas para representar posibles conflictos entre paquetes, cómo resolverlos (por ejemplo, durante apt-get dist-upgradevs. aptitude full-upgrade) y cómo expresarlos cuando interactúa con el usuario. En términos generales, ambos podrían hacer lo incorrecto en situaciones difíciles, pero es mucho más probable que apt-get lo haga mal que la aptitud.
aptitudelos eliminará de inmediato, peroapt-getsolo le pedirá que los elimine ingresando el comandoapt-get autoremove. En general, querrán eliminar los mismos elementos. Vea este enlace, sin embargo, para ver un caso complejo en el que no estuvieron de acuerdo en eso: forums.debian.net/viewtopic.php?f=10&t=49589&start=0Muchos buenos consejos ya están aquí, pero permítanme agregar una cosa que nadie ha mencionado. Si decide cambiar, es posible que desee ejecutar este comando, dependiendo de lo que haya estado haciendo
apt-get:Ese comando restablece
aptitudeel sentido de qué paquetes son huérfanos y deben eliminarse.Aquí está la razón por la que a veces es útil: por un tiempo ahora, tanto
apt-getyaptitudehará un seguimiento de los paquetes que se instalaron automáticamente como una dependencia de otra cosa. Entonces, por ejemplo, si instalampd, puede obtenerlib-so-and-souna dependencia. Hacen esto, de modo que si luego lo eliminasmpd, tambiénlib-so-and-sose elimina. Peroaptitudeyapt-getmaneja esta limpieza de manera diferente.aptitudeintenta inmediatamente eliminar todas las dependencias huérfanas; peroapt-getsimplemente sugiere que corrasapt-get autoremovepara limpiar. (La lógica detrás de todo esto es que solo obtuviste la biblioteca, ya que lampdnecesitabas. Si no la conservasmpd, ya no deberías necesitarla. Si otro paquete todavía depende de ella, entonces ambosaptitudeyapt-getsabrá esto y no intentará eliminar la biblioteca).¿Cuál es mi punto? Bueno, si has visto constantes empujones para correr
apt-get autoremovey cambias aaptitude, entonces puedes sorprenderte la primera vez que intentes instalar algo.aptitudeinmediatamente intentará eliminar a todos esos huérfanos. En general, esto estará bien (son huérfanos después de todo, y no es necesario), pero hay un caso complicado. Todos los metapaquetes de escritorio implican una cadena de dependencia compleja donde cada programa individual se incorpora como una dependencia de un envoltorio de paquete virtual. Por ejemplo, si tiene instalado Gnome porque instaló elgnomepaquete, entonces todos sus programas de escritorio normales se instalaron como dependencias. Si ha desinstalado uno solo de estos programas (por ejemplo, Ekiga o Gedit), entonces a los ojos deaptitudeel resto de tu escritorio también debería eliminarse. Tenga en cuenta queaptitudesiempre pregunta antes de que elimine las cosas, pero las personas a menudo ingresan 'Y' sin leer. En mi experiencia, esta es la queja / confusión más común para las personas nuevas en Debian.Dos consejos generales:
aptitudeoapt-getcuidadosamente, antes de decir sí a cualquier cosa.aptitude -s safe-upgradeoaptitude -s install foo. La-s|--simulatebandera es tu amiga.fuente
Se dijo en la lista de correo de Debian, hace años, que cambiar de apt-get a aptitude era arriesgado. Estas son dos versiones de Debian (digamos 10 años) hace. Todos esos problemas parecen estar resueltos ahora, y ciertamente no he visto problemas en Debian o Ubuntu.
fuente
apt-getaaptitude. En aquel entonces, manejaban muchas funciones esenciales de manera muy diferente. Con el tiempo, se han vuelto mucho más similares yaptitudehan madurado una tonelada. Para el 90% de los casos ahora, no debería haber problemas si cambia. Vea mi publicación para un caso de borde.También diría que adelante y úselo
aptitude.Aptitudetiene una mejor gestión de dependencia queapt-get. Esto ayudará a mantener baja la cantidad de paquetes huérfanos.He leído hace un tiempo que
aptitudetiene el mejor algoritmo de actualización dist en comparaciónapt-get. Pero eso no es una característica asesina, ya que no se usa con tanta frecuencia en la vida útil de un sistema.Además, tendrás más cosas unidas en una herramienta. En lugar de recordar cuándo llamar
apt-get,apt-cacheodpkge interruptores con los que sólo tiene que utilizar la aptitud y la mayoría de las cosas consigo.En cuanto a las complicaciones al cambiar "en el medio": no recuerdo haber tenido ninguna cuando lo hice.
fuente
¿No son solo una interfaz diferente al mismo backend?
fuente
aptitudees una interfaz más funcional ...dpkg. perodpkgsolo instala los paquetes; son los front-end los que se encargan de la búsqueda, la resolución de la dependencia y la descarga.Desde mi experiencia, tienen una forma diferente de fijar las versiones del paquete. En mi caso, le dije a aptitud para bloquear ciertos paquetes, suponiendo que estaría a salvo de futuras actualizaciones. Estaba equivocado; el administrador de actualizaciones programadas por cron, que usa apt-get, procede a actualizarlo para mi consternación.
Drats, mientras escribía esto, busqué en Google y descubrí que el error (la aptitud # 557580 no obedece los pines en las preferencias.d / *) ya estaba solucionado.
fuente
Utilizo apt-get y aptitude sin ningún problema: tengo la misma pregunta ... ¿Por qué la gente dice esto? :RE
Continúa y no te preocupes: aptitude es solo una gui de texto para apt-get, que incluso podrías usar como una aplicación de línea de comandos, por ejemplo,
apt-get install fooes lo mismo queaptitude install foo.Saludos
fuente
apt-gettambién ofrecen la eliminación automática de paquetes instalados solo como dependencias. La diferencia restante a ese respecto es queaptitudeelimina instantáneamente las dependencias (según corresponda), peroapt-getsolo le indica que ejecute el comandoapt-get autoremove. Pero ambos rastrean las dependencias de la misma manera ahora. Sin embargo, todavía difieren en su manejo de dependencias complejas y casos extremos (instalaciones o eliminaciones muy complicadas), pero para la mayoría de las personas y la mayoría de las situaciones, ahora funcionan igual.