¿Cómo eliminar las dependencias de un paquete desinstalado?


48

Quiero instalar un paquete (DigiKam), pero tiene muchas dependencias. Si decido que ya no necesito este software y lo desinstalo, ¿se eliminarán las dependencias que ahora no son necesarias?

Si no, ¿cómo puedo hacerlo manualmente?

Respuestas:


80

Puedes usar el comando apt-get autoremove. Eliminará los paquetes que están instalados como dependencias automáticas, pero que ya no dependen de ellos.

apt-gettiene un indicador --auto-removeque se puede usar para eliminar automáticamente los paquetes instalados automáticamente al eliminar un paquete instalado manualmente:

apt-get remove --auto-remove packagename

Algunas otras herramientas también son capaces de hacerlo, por ejemplo aptitude, sugerirá automáticamente que elimine los paquetes que han quedado huérfanos.

El seguimiento de paquetes instalado automáticamente está integrado en apt, por lo que el seguimiento debería funcionar independientemente de la herramienta que utilice para instalar los paquetes.


Entonces, la respuesta sería que NO se hace automáticamente al eliminar el paquete "padre", ¿verdad?
jfoucher

Depende del método que utilice para eliminar el paquete principal. Por ejemplo, aptitude sugiere que esos paquetes se eliminen cuando desinstale el paquete principal. Sin embargo, no todas las herramientas hacen esto.
Ressu

Puede eliminar un paquete y todas sus dependencias que ya no son necesarias en un solo paso con sudo apt-get remove --auto-remove package.
Marius Gedminas

La diferencia entre autoremove y --auto-remove no está clara. ¿Puedo combinarlos?
johny por qué el

@johnywhy la bandera está destinada a ser un parámetro para eliminar el comando mientras que el comando de eliminación automática es independiente. Dudo que pueda combinarlos, pero no puedo verificar para asegurarme en este momento.
Ressu

10
aptitude purge digikam
deborphan
aptitude purge $(deborphan)

deborphanenumera los paquetes que no se usan o que no dependen. Para que pueda desinstalarlos de forma segura. Tiendo a usar purgecomo opción aptitudeporque elimina también los archivos de configuración y otras cosas.


Cuando se usa deborphan, a menudo es necesario ejecutarlo varias veces seguidas, o al menos fue en mi experiencia con él. Parecía seguir encontrando cosas nuevas.
mfisch

Sí, eso es correcto. Alguien escribió una mejora para deborphan. Pero eso nunca llegó a Debian. El algoritmo era mejor y solo tenía que ejecutarse una vez. Tal vez le preguntaría al autor si quiere agregarlo nuevamente a los repositorios de Debian / Ubuntu.
qbi

Quizás no pueda usarlo, pero deborphan generalmente quiere eliminar muchas aplicaciones que realmente uso, así como algunos paquetes importantes del sistema.
Rafał Cieślak

1
aptitude purge <pkgname>es muy útil para borrar completamente los paquetes que han tenido una desinstalación fallida / parcialmente exitosa. Su estado puede aparecer dpkg -L <pkgname>como deinstallpero, al usarlos aptitude, los eliminará por completo de la base de datos de aptitude, y los archivos persistentes que no fueron eliminados por la instalación fallida también parecieron eliminarse.
KomodoDave

5

El Conserje de la computadora, en el menú del sistema, también puede hacer esto.


4

Uso ubuntu tweak , tiene una utilidad de limpieza de aplicaciones muy eficiente que nunca ha eliminado más de lo que debería.


3
sudo apt-get remove --auto-remove 

Solo ejecuta esto.

Instale BleachBit desde el Centro de software. Cuando limpie su sistema usándolo, BleachBit ejecutará automáticamente este comando para limpiar el caché apto.


0

Yo tuve el mismo problema. Aquí esta lo que hice:

sudo apt-get check

Este comando proporcionará el nombre de las dependencias. Por ejemplo, mi sistema tenía chromium-browser-l10n.

Luego ingrese el siguiente comando

sudo apt-get remove --auto-remove chromium-browser-l10n

Eliminará las dependencias completamente de su sistema

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.