[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Escritorio mas limpio



Juan José López wrote:

> El Fri, 19 Sep 2014 22:04:09 +0200
> Etemenanki <etemenanki@openmailbox.org> escribió:
>> 
>> Un consejo a los novatos, hay que elegir un interfaz forever en cada
>> instalación si no queréis acabar con un buen lío en la gestión de la
>> paquetería, puesto que cada interfaz tiene su propia base de datos.
>> 
>> Si instalas algo con un interfaz y ese algo luego lo desinstalas con
>> otro, eso otro interfaz no tiene los datos de instalación en sus
>> registros y ahí empieza el problema de que no se desinstalen bien los
>> paquetes.
>> 
>> Desterrando mitos que arrastra el pobre e incomprendido Aptitude por
>> blogs y redes sociales incoming... :-D
>> 
>>
> 
> No estoy de acuerdo. Suelo utilizar aptitude como norma; ocasionalmente
> apt-get; y después de desinstalar paquetes 'para pruebas', paso
> deborphan.

Ídem en lo de aptitude. apt-get y deborphan no los suelo usar, nada más 
alguna vez por curiosidad.
 
> apt-get y deborphan no tienen una 'base de datos' propia. Se limitan a
> utilizar la base de datos global de dpkg, que a su vez se limita a
> indicar los paquetes presentes en el sistema y sus dependencias.

deborphan ni idea por que no lo uso, apt-get no tiene una base propia, pero 
usa la de APT, que a su vez usa la de dpkg.

Aquí muestro algunas localizaciones para confirmarlo:

aptitude
    /var/log/aptitude
    /var/lib/aptitude/pkgstates

apt-get que como no tiene base propia usa la de APT
    /var/log/apt/history.log + term.log
    /var/lib/apt/... 

dpkg (herramienta principal también sus registros)
    /var/log/dkpg.log
    /var/lib/dpkg/...

Estamos de acuerdo en que dpkg es la herramienta base (herramienta de bajo 
nivel), APT es una biblioteca considerada un frontend de dpkg (herramienta 
de alto nivel) y apt-get, aptitude, etc... son a su vez frontends de APT 
(más alto nivel aún xD). 

> aptitude si tiene datos propios, pero tan solo se percata de paquetes
> ELIMINADOS; es decir, si recuerda que un paquete estaba instalado y ya
> no lo está, propondrá su instalación. Solo propondrá desinstalar un
> paquete, sea cual sea el método de instalación, si se ha configurado
> para eliminar paquetes no utilizados por otros.

Aptitude se percata de más cosas que solamente de los paquetes eliminados, 
mira por cada paquete los diferentes estados que hay en su base de datos:

    /var/lib/aptitude/pkgstates
    
      Package: linux-source-3.14
      Architecture: amd64
      Unseen: yes
      State: 1
      Dselect-State: 1
      Remove-Reason: 0

> De cualquier forma, todos los front-ends (que eso son) terminan
> llamando a dpkg con las opciones pertinentes; es este el que realiza el
> verdadero trabajo.

Cierto, el camino completo es, frontends → APT → dpkg.

> Eso implica que no quedan paquetes 'mal instalados' ni dependencias
> incumplidas, instalemos como instalemos. dpkg se encarga de ello.

Yo no he dicho que haya "problemas" al instalar, ni que queden los programas 
mal instalados, ni que queden dependencias incumplidas por mezclar los 
frontends. Lo que he dicho es que los "problemas" vienen al desinstalar. Que 
te pueden quedar resquicios por ahí, pero nada que un buen administrador no 
sepa resolver, claro está.

> No confundir lo anterior con la diferencia entre 'desinstalar' y
> 'purgar'. Lo primero deja los archivos de configuración, mientras que
> lo segundo elimina todo.

Por supuesto, aunque espero que esa explicación no vaya explícitamente para 
mi. Creo que he demostrado sobradamente que no soy un novato. :-)
 
> Además de lo anterior, algunos paquetes crean datos durante su uso.
> Esto es normal. dpkg, al desinstalar o purgar, compara los datos
> presentes el el paquete con el contenido real del sistema de archivos.
> Si en este último encuentra archivos que no deberían de estar, muestra
> un aviso y los deja sin eliminar. Es responsabilidad del administrador
> de la máquina comprobar estos archivos y decidir si eliminarlos o no.
> 
> Adicionalmente a los anterior, algunos paquetes preguntan directamente
> si eliminar ciertos archivos de datos creados por los paquetes durante
> su normal uso. Por ejemplo, si usamos bases de datos y las
> desinstalamos, es normal que nos pregunte si deseamos también borrar
> las bases de datos creadas. Esto es también gestionado indirectamente
> por dpkg. En realidad, son órdenes indicadas en el propio paquete, y
> son ejecutadas por dpkg al eliminarlo.
> 
> Moraleja: podemos instalar los paquetes con la herramienta que
> queramos; lo único a lo que nos arriesgamos es a dejar el sistema
> 'sucio', con archivos de configuración, de datos, o directamente
> paquetes, que no son utilizados y ocupan espacio en disco. Tengamos
> presente que si un paquete no se utiliza, sus archivos nunca se cargan
> en memória ni utilizan tiempo de CPU. Se limita a ocupar espacio para
> nada. (servicios al inicio aparte, pero me estoy enrollando demasiado).

Totalmente de acuerdo, el administrador debe saber lo que hace con el 
sistema. Pero como verás esas recomendaciones que hice empezaban con un, "Un 
consejo a los novatos..." y los novatos no son capaces que gestionar bien 
una sola herramienta, como para mezclar varias. Para ellos es mejor que usen 
siempre un solo frontend desde el inicio de la instalación, que lo mantengan 
y que lo aprendan a usar lo mejor posible hasta que dejen de ser novatos.

En un principio tuve la tentación de explicar todo esto más detalladamente, 
lo hice en plan rápido y mal, sobretodo esto último, pero claro, no quise 
hacer un post kilométrico porque no es el lugar adecuado y además de que el 
hilo va de escritorios ligeros y no de gestores de paquetes, espero que 
nadie se haya molestado. El tema es interesante. :-D 

Un placer comentar con gente que sabe.

Saludos!


Reply to: