Tema:
Todos lo que usamos Debian GNU/Linux conocemos apt-get, dpkg y el Synaptic que es la interface gráfica de apt, sabemos lo útil y poderozas herramientas que son, estas nos permiten manejar comodamente los paquetes, pero existe un pequeño problemita en el momento de querer desinstalar un paquete, que a lo mejor no elimine todos lo paquetes que se instalo para resolver las dependencias, o en el momento de realizar una actualización queden algunos paquetes huerfanos que ya no sean necesarios, entonces nuestro sistema no esta realizando una buena dieta que digamos y comienza a engordarse
Para resolver este problemita podemos usar deborphan en combinación con apt-get remove, o para los que le gusta todo en modo grafico pueden usar orphaner que es un frontend para deborphan ;)
Entonces comencemos con la instalación de la misma
# aptitude install deborphan
Ahora si queremos ver que librerias estan huerfanas hacemos lo siguiente:
# deborphan
libc6-i386
#
Entonces para eliminar esta libreria huerfana usamos:
# deborphan | xargs apt-get remove -y
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
Los siguientes paquetes se ELIMINARAN:
libc6-i386
0 actualizados, 0 se instalarán, 1 para eliminar y 0 no actualizados.
Necesito descargar 0B de archivos.
Se liberarán 7590kB después de desempaquetar.
(Leyendo la base de datos ...
59764 ficheros y directorios instalados actualmente.)
Desinstalando libc6-i386 ...
zv6000ecualug:/home/elsanto#
Pero, la receta de la dieta que nos ofrece deborphan podemos decir que no es muy buena, debido a que su campo de acción es limitado, entonces podemos usar mejor Debfoster ;)
debfoster que es una herramienta de mayor potencia la cual si hace la distinción entre los paquetes instalados de manera explícita y aquellos que son instalados de manera implícita para resolver las dependencias.
En otras palabras esto quiere decir que debfoster a parte de eliminar las librerias huérfanas como lo realiza deborphan, aquellos paquetes que fueron instalados de manera implícita y que actualmente ningun otro programa dependa de él también serán eliminados
Entonces primero lo instalamos
# aptitude install debfoster
La forma de usarlo es muy sencilla la primera vez que lo hagamos correr te hará una serie de preguntas acerca de los paquetes que están instalados actualmente. Puedes elegir mantener el paquete (en este caso el debfoster recuerda esto) o puedes hacer que lo elimine (debfoster lo eliminara por ti cuando conteste la pregunta). Debfoster reducirá al mínimo el número de preguntas hechas. Si no sabes que paquete es, puedes tipear el signo de interrogación (?) para conseguir una cierta información sobre el paquete. La siguiente vez que lo corras, él te preguntara solamente si algo ha cambiado.
¡Usala! de vez en cuando después cada vez que instales/elimines paquetes y mantendras a dieta a tu Debian ;)
zv6000ecualug:/home/elsanto# debfoster
gnome-desktop-environment is keeping the following 100 packages installed:
alsa-base alsa-utils arj at-spi bind9-host bug-buddy dasher dasher-data
dnsutils ekiga eog esound evince evolution evolution-common
evolution-plugins fast-user-switch-applet festival festlex-cmu
festlex-poslex festvox-kallpc16k file-roller gcalctool gconf-editor gdb gdm
gdm-themes gedit gedit-common gnome-accessibility-themes gnome-backgrounds
gnome-cards-data gnome-core gnome-games gnome-games-data
gnome-games-extra-data gnome-keyring-manager gnome-mag gnome-nettool
gnome-pilot gnome-pilot-conduits gnome-system-tools gnome-themes
gnopernicus gok gstreamer0.10-esd gtk2-engines gtk2-engines-pixbuf
gtkhtml3.8 gucharmap industrial-cursor-theme libarchive-tar-perl
libatspi1.0-0 libbind9-0 libbrlapi1 libdigest-hmac-perl libdigest-sha1-perl
libdjvulibre15 libdmx1 libdns22 libestools1.2 libexchange-storage1.2-1
libgail-gnome-module libgnome-mag2 libgnome-pilot2 libgnome-speech3
libgnomevfs2-bin libio-zlib-perl libisc11 libisccc0 libisccfg1 libkpathsea4
liblwres9 libmail-spf-query-perl libnet-cidr-lite-perl libnet-dns-perl
libnet-ip-perl libnm-glib0 libopal-2.2.0 libpisock9 libpisync0
libpoppler0c2-glib libpt-1.10.0 libpt-plugins-alsa libpt-plugins-v4l
libsocket6-perl libsys-hostname-long-perl libxevie1 linux-sound-base lsof
lzop sharutils sound-juicer spamassassin spamc system-tools-backends unzip
vino zenity zip
Keep gnome-desktop-environment? [Ynpsiuqx?], [H]elp: Y
xorg is keeping the following 5 packages installed:
libgl1-mesa-dri type-handling xfonts-100dpi xfonts-75dpi xfonts-scalable
Keep xorg? [Ynpsiuqx?], [H]elp: Y
Pero tenemos otra alternativa para mantenerlo a dieta a Debian, la cual es aptitude, este es un frontend de apt, este si recuerda las dependencias de un programa en particular, por lo que el proceso de eliminación del programa se da correctamente. Aptitude podemos usarlo de dos maneras en linea de comandos, la cual es la que mas estoy usando ya que tiene las misma similitud con los comandos del apt, y la otra para los que no le gusta la linea de comando tambien tiene una interfaz gráfica
Si queremos la interfaz grafica de aptitude ponemos:
# aptitude
Asi que les recomiendo usar aptitude como la herramienta para el manejo de sus paquetes, no notara la diferencia para aquellos que estan acostumbrados a apt y tambien no tendran que utilizar otras alternativas para mantener a dieta a Debian, aptitude lo hará todo por usted.
Ahora que sabemos que herramienta usar para mantener a nuestro Debian no muy gordo ;) pasemos a ver como podemos mantenerlo actualizado :)
Es algo muy simple, esto debemos darle las gracias a gente de Ubuntu usando el notificador de actualizaciones que ellos usan portado a Debian ;) asi que para instalarlo ponemos esto
# aptitude install update-manager update-notifier
aqui les dejos unos pantallazos para que lo vean en acción ;)
[flickr-photo:id=447299994,size=o]
[flickr-photo:id=448184567,size=o]
Espero que le sirva de algo estas pequeñas notas ;)