Duplicar una instalación de Linux basada en Yum

20

Dada una instalación basada en Yum (específicamente en mi caso, una instalación Scientific Linux 5.1 x86_64), ¿cómo duplicaría los programas y utilidades instalados en una nueva máquina basada en Fedora Core x86_64? El hardware es muy similar pero no idéntico, y existe la diferencia obvia de que SL5 se basa en EL, no en Fedora; Mi objetivo principal es duplicar la experiencia del usuario de la caja original (SL) a la nueva caja (FC).

Wesley Burr
fuente
solo una nota al margen en caso de que aún no lo sepa: puede obtener la lista de programas para instalar en el nuevo sistema y luego copiar la configuración en su carpeta de inicio (archivos y directorios cuyos nombres comienzan con a .)
phunehehe
Solo tenga cuidado con los desajustes de versión. He destruido la configuración debido a incompatibilidades de configuración en mi directorio de inicio al hacerlo. Por lo general, funciona bien migrando a versiones más nuevas, pero hay dificultades ocasionales.
Matt Simmons

Respuestas:

18

Puede crear una lista del software instalado con:

$ rpm -qa > installed-software.log

Como se basan en diferentes distribuciones, no estoy seguro de cómo haría la instalación.

Si lo copiara en una nueva instalación de la misma distribución, ejecutaría el siguiente comando como root

# yum -y install $(cat /home/user/installed-software.log)
Steve Burdine
fuente
8

Obtenga la lista de RPM instalados en su caja RHEL:

yum list installed |tail -n +3|cut -d' ' -f1 > installed_packages.txt

Instalar paquetes en Fedora:

yum -y install $(cat installed_packages.txt)

Nota: Fedora es el proyecto de I + D para RHEL y debería poder instalar la mayoría de estos paquetes en Fedora.

El método Steves enumera los números de versión y desea evitarlo.

Dejan
fuente
Fedora es una distribución en sus propios términos, con una postura agresiva de ser el primero con el mejor software de código abierto / libre. Red Hat Enterprise Linux es una distribución muy conservadora, casi la dimensión opuesta. Red Hat toma (paquetes seleccionados de) una versión de Fedora y después de la estabilización y el control de calidad corta Red Hat Enterprise Linux. Llamar a Fedora "un proyecto de I + D" es tan incorrecto como decir que Debian realiza I + D para Fedora (sí, Fedora toma parches e incluso completa paquetes de Debian y viceversa).
vonbrand
2

Puede probar Kickstart o puede configurar un servidor de instalación / arranque PXE para múltiples distribuciones. O si algunas de sus máquinas no tienen disco, puede probar el método LTPS (esto es lo que generalmente se llama - cliente ligero - IIRC), también vea aquí

EDITAR: Si ese es el caso, mira esto

bitek
fuente
1
Creo que la pregunta era más sobre cómo obtener una lista de aplicaciones instaladas en una caja / distribución e instalarlas en otra caja / distribución, en lugar de una forma automatizada de hacer las instalaciones.
Frozenskys
Lo último es correcto, y era exactamente lo que necesitaba.
Wesley Burr
0

Creo que la respuesta de Dejan /unix//a/25729/346788 es la mejor para un yumsistema basado. Sin embargo, puede no funcionar cuando ssh en el servidor debido al búfer. ¿Detalles en Cómo conseguir que la salida `yum list` permanezca en una línea cuando se obtiene la salida a través del comando ssh remoto?

Por lo tanto, para mejorar ligeramente, para obtener la lista completa del paquete:

yum list installed | xargs -n3 | column -t  | tail -n +3 |cut -d' ' -f1

Para obtener la lista de paquetes instalados desde rpm:

yum list installed | xargs -n3 | column -t | grep -v "@" | tail -n +3 |cut -d' ' -f1

Para obtener la lista de paquetes instalados desde yum:

yum list installed | xargs -n3 | column -t | grep "@" | tail -n +3 |cut -d' ' -f1
Han Luo
fuente
Si bien esto es, supongo. - un complemento útil a la respuesta de Dejan a esta pregunta, no es una respuesta a esta pregunta. Tal vez podría escribir una pregunta que corresponda a la publicación anterior y luego enviarla (es decir, preguntar) como una nueva pregunta. Además, respuestas como esta deberían explicar lo que están haciendo (y cómo) y mostrar resultados de ejemplo.
G-Man dice 'Restablecer a Mónica' el