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.