Eliminación segura de paquetes * no utilizados *

Después de varios experimentos para principiantes de Linux, mi sistema Kubuntu me sigue diciendo que hay paquetes sin usar que ya no son necesarios y que deberían eliminarse. Esto me suena como una buena idea.

Esto es lo que “apt-get -s autoremove” propone para su eliminación:

freeglut3 fs-uae fs-uae-launcher gir1.2-gtksource-3.0 hwdata ipython kmymoney-common libalkimia4 libexosip2-11 libglee0d1 libgnome-desktop-2-17 libgtksourceview-3.0-1 libgtksourceview-3.0-common libgwengui-cpp0 libgwengui-qt4-0 liblinphone5 libmediastreamer-base3 libofx6 libosip2-11 libosp5 libpanel-applet0 libportmidi0 libpyside1.2 libsdl-image1.2 libsdl-mixer1.2 libsdl-ttf2.0-0 libsensors-applet-plugin0 libshiboken1.2 libsmpeg0 linux-headers-3.19.0-15 linux-headers-3.19.0-15-generic linux-image-3.19.0-15-generic linux-image-extra-3.19.0-15-generic meld python-dulwich python-fastimport python-numpy python-opengl python-pexpect python-pygame python-pyside python-pyside.phonon python-pyside.qtcore python-pyside.qtdeclarative python-pyside.qtgui python-pyside.qthelp python-pyside.qtnetwork python-pyside.qtopengl python-pyside.qtscript python-pyside.qtsql python-pyside.qtsvg python-pyside.qttest python-pyside.qtuitools python-pyside.qtwebkit python-pyside.qtxml python-simplegeneric python-svn 

Para la mayoría de ellos no tengo idea en qué contexto los instalé. Pero al menos uno de estos paquetes definitivamente NO está en uso: el emulador “fs-uae” fue instalado manualmente por mí y tengo la intención de continuar usándolo.

¿Por qué apt-get propone eliminar el paquete “fs-uae”? ¿Hay alguna forma de limpiar con romper algo y sin quitar algo que necesito?

Como probablemente ya sepa, en los paquetes de Linux se pueden especificar “dependencias”, es decir, otros paquetes que se deben instalar para que este paquete realmente funcione. Estas dependencias se resuelven de forma recursiva, es decir, las dependencias de sus paquetes también se instalan. De esta manera, pueden existir meta-paquetes que instalarán todo el conjunto de software. Los ejemplos comunes son libreoffice (para suite de oficina) o kde-full para todo el escritorio KDE.

Cuando apt (administrador de paquetes Debian) instala algún paquete, marca todas las dependencias como instaladas automáticamente . De esta manera, puede distinguir entre los paquetes solicitados explícitamente por el usuario y los paquetes que se obtuvieron simplemente como dependencias (sobre qué usuario es más probable que no le importe nada).

apt-get autoremove busca paquetes marcados como instalados automáticamente, pero que ya no son necesarios para ningún paquete instalado manualmente. Estas a menudo son versiones más antiguas de las bibliotecas (cuando la versión de la biblioteca está en el nombre del paquete para permitir que coexistan diferentes versiones, por ejemplo, libavcodec54 y libavcodec56 ) o paquetes eliminados del repository, pero a veces algunas aplicaciones útiles se introducen como dependencia y luego se eliminan. Esto sucede especialmente cuando primero le dice a apt que instale paquetes recomendados o sugeridos, pero luego configúrelo para que no extraiga estos paquetes como dependencias.

Para eliminar el paquete de la lista de paquetes considerados para ser eliminados, marque ese paquete como instalado manualmente. Puedes hacerlo usando apt-mark :

 apt-mark manual  

o aptitude (los siguientes comandos son equivalentes, use solo uno):

 aptitude unmarkauto  aptitude install  aptitude install &m 

Finalmente, para obtener algo de contexto cuando se instalaron estos paquetes en particular, puede intentar buscar sus nombres en los archivos /var/log/apt/history.log . Estos registros se rotan (se comprimen y se ponen en un archivo separado) mensualmente; para obtener el archivo completo, puede ejecutar (el orden no se conservará):

 cat /var/log/apt/history.log > /tmp/full-archive zcat history.log* >> /tmp/full-archive