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

Re: Cuestion sobre paquetes



Antonio Castro:
> Uso ahora Potato y aún no quiero hacer actualización.
>
> Quiero hacer una instalación de Woody desde cero en otro sistema.
>
> Hacer una previa selección de paquetes y luego añadir los paquetes que
> tengo instalados en la potato pero naturalmente en sus versiones para Woody.
>
> De otra forma se me van a olvidar muchísimas cosas.
>
> Manualmente lo tengo claro. Con dpkg --list puedo optener una lista
> de paquetes en ambos sistemas y compararlos pero no se si existirá alguna
> forma más rápida y sencilla de hacerlo porque son 700 paquetes los que
> tengo instalados en mi Potato.

Más rápido que dpkg --list es esto otro:

(cd /var/lib/dpkg/info; ls *.list) | sed -e 's/\.list//' | sort

Ponlo en un script y llámalo por ejemplo paquetes-instalados.
[ Mientras no haya cambios radicales en dpkg, funcionará ].

La cuestión sería entonces cómo comparar la lista de paquetes que se
obtiene con eso en la máquina que tiene potato con la lista que sale
en woody para determinar qué paquetes te interesa añadir en woody.

Yo suelo usar un programa la mar de tonto, pero efectivo:

#!/usr/bin/awk -f
FNR == 1 { argind++ }
{
  if (argind == 1)
    a[$0] = 1
  else if (! ($0 in a))
    print $0
}

A este programa le das dos ficheros y te dice las líneas del segundo
que no están en el primero. Por ejemplo, si lo llamas "excluye", entonces

excluye paquetes-de-woody paquetes-de-potato

te dará los paquetes de potato que no tienes en woody todavía, para
irlos añadiendo a la máquina que tiene woody con apt-get install y que
apt se encargue de las dependencias.

Este método no es perfecto. Por un lado, no debe instalarse todo lo
que salga, y por otro, tendrás que instalar cosas nuevas que no tenías
instaladas antes.

Acerca de lo primero, en general debes olvidarte de las bibliotecas,
pues cambian de una versión de la distribución a otra. Si tienes un
paquete llamado pitiflús que depende de libpatatín1 en potato, pero en
woody pitiflús depende de libpatatín2, este método te diría que
después de instalar woody de cero, debes instalar pitiflús y
libpatatín1 (haciendo la diferencia entre las listas de paquetes
instalados). Pues tú no hagas caso e instala solamente pitiflús, que
apt ya se encargará de instalar libpatatín2.

Acerca de lo segundo, los paquetes que uno instalaría en woody
partiendo de cero no siempre coinciden con lo que uno tenía instalado
en potato. Por ejemplo, yo tenía xserver-mach64 en potato y ahora
tengo xserver-xfree86, a pesar de que el primero todavía existe en
woody. Seguro que en tu situación te encontrarás un montón de casos
parecidos.


Otra cosa que puedes hacer para saber qué paquetes te interesa añadir
en el woody que estás instalando de cero es esto: Coge la máquina que
tiene potato y clónala por el método que sea (suponiendo que es una
máquina "de producción" y que los experimentos deben hacerse con gaseosa).

Entonces coges la máquina clónica y la actualizas a woody. Luego usas
deborphan y el sentido común y borras todo lo que sobre. Los paquetes
que tengas instalados después de eso serán seguramente los que te
interesaría instalar en una woody si lo hicieras partiendo de cero.



Reply to: