Duplication d'une installation Linux basée sur Yum

20

Étant donné une installation basée sur Yum (spécifiquement dans mon cas, une installation Scientific Linux 5.1 x86_64), comment pourrais-je dupliquer les programmes et utilitaires installés sur une nouvelle machine basée sur Fedora Core x86_64? Le matériel est très similaire mais pas identique, et il y a la différence évidente que SL5 est basé sur EL, pas sur Fedora; Je vise en grande partie à dupliquer l'expérience utilisateur de la boîte d'origine (SL) à la nouvelle boîte (FC).

Wesley Burr
la source
juste une remarque au cas où vous ne le connaissez pas déjà: vous pouvez obtenir la liste des programmes à installer sur le nouveau système, puis recopier les paramètres de votre dossier de départ (fichiers et répertoires dont les noms commencent par un .)
phunehehe
Faites juste attention aux incompatibilités de version. J'ai détruit les paramètres en raison d'incompatibilités de configuration dans mon répertoire personnel. En règle générale, cela fonctionne correctement lors de la migration vers des versions plus récentes, mais il y a parfois des difficultés.
Matt Simmons

Réponses:

18

Vous pouvez créer une liste des logiciels installés avec:

$ rpm -qa > installed-software.log

Puisqu'ils sont basés sur différentes distributions, je ne sais pas comment vous feriez l'installation.

Si je le copiais vers une nouvelle installation de la même distribution, j'exécuterais la commande suivante en tant que root

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

Obtenez la liste des RPM installés sur votre box RHEL:

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

Installez les packages sur Fedora:

yum -y install $(cat installed_packages.txt)

Remarque: Fedora est le projet de R&D pour RHEL et vous devriez pouvoir installer la plupart de ces packages dans Fedora.

La méthode Steves répertorie les numéros de version et vous souhaitez éviter cela.

Dejan
la source
Fedora est une distribution à ses propres conditions, avec une position agressive d'être le premier avec le meilleur des logiciels libres / open source. Red Hat Enterprise Linux est une distribution très conservatrice, presque l'opposé dimétral. Red Hat prend (certains packages de) une version de Fedora et après stabilisation et QA, il supprime Red Hat Enterprise Linux. Appeler Fedora "un projet de R&D" est aussi faux que de dire que Debian fait de la R&D pour Fedora (oui, Fedora prend des correctifs et même des packages complets depuis Debian, et vice versa).
vonbrand
2

Vous pouvez essayer Kickstart ou vous pouvez configurer un serveur d'installation / de démarrage PXE pour plusieurs distributions. Ou si certaines de vos machines sont sans disque, vous pouvez essayer la méthode LTPS (c'est ce qu'on appelle généralement - client léger - IIRC), voir aussi ici

EDIT: Si tel est le cas, voyez ceci

bitek
la source
1
Je pense que la question était plus de savoir comment obtenir une liste des applications installées sur une boîte / distribution et les installer sur une autre boîte / distribution, plutôt qu'une façon automatisée de faire des installations.
Frozenskys
Ce dernier est correct, et c'était exactement ce dont j'avais besoin.
Wesley Burr
0

Je crois que la réponse de Dejan /unix//a/25729/346788 est la meilleure pour un yumsystème basé. Cependant, cela peut ne pas fonctionner lorsque vous vous connectez au serveur en raison du tampon. Détails sur Comment faire pour que la sortie `yum list` reste sur une seule ligne lors de la sortie via la commande ssh à distance?

Ainsi, pour s'améliorer légèrement, obtenir la liste complète des packages:

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

Pour obtenir la liste des packages installés à partir d'un rpm:

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

Pour obtenir la liste des packages installés à partir de yum:

yum list installed | xargs -n3 | column -t | grep "@" | tail -n +3 |cut -d' ' -f1
Han Luo
la source
Bien que ce soit - je suppose? - un complément utile à la réponse de Dejan à cette question, ce n'est pas une réponse à cette question. Peut-être pourriez-vous rédiger une question qui correspond au message ci-dessus, puis la soumettre (c'est-à-dire la poser) en tant que nouvelle question. De plus, des réponses comme celle-ci devraient expliquer ce qu'elles font (et comment) et montrer un exemple de sortie.
G-Man dit «Réinstalle Monica» le