Recréer un RPM à partir d'un RPM installé sur Linux [fermé]
Question
Comment recréer un régime qui est déjà installé sur un système Linux?
La solution
Quelle version de RPM utilisez-vous? Si vous utilisez une plus récente, j'ai un truc qui pourrait fonctionner pour vous.
Les nouvelles versions de RPM ont un option de rollback en toute sécurité ; il suffit d'utiliser la commande --repackage, et il va générer un paquet qui comprend toutes les conneries idiosyncrasique de l'installation d'origine. Rappelez-vous, vous aurez à faire réellement quelque chose (par exemple rpm -e --repackage rpm_goes_here qui effacera l'original, tout en faisant un paquet que vous devriez être en mesure de restaurer (après avoir fait une copie), mais si vous attendre que cela fonctionne parfaitement, j'ai un pont, vous voudrez peut-être acheter), il est donc un peu un acte de foi si vous ne disposez pas d'une sauvegarde complète.
Il y a une configuration en cause, et vous devez tester test test avant de l'essayer sur quelque chose de critique, mais cela peut fonctionner.
Autres conseils
Fondamentalement, vous devrez effectuer les opérations suivantes:
1] Créez un fichier .spec avec tous les en-têtes [ http://www.rpm.org/max-rpm/s1-rpm-build-creating-spec-file.html ]
Vous devrez utiliser le rpm -q --queryformat « » pour obtenir l'en-tête du régime déjà installé.
Par exemple. rpm -q --queryformat "Release: %{RELEASE}\n" installed_rpm
Pour obtenir les fichiers pour remplir la section %files
utilisez la commande rpm -ql
.
2] rpmbuild -bb specfile
course pour générer le fichier rpm.
Le paquet deltarpm peut le faire:
A deltarpm contient la différence entre une ancienne et une nouvelle version de un régime qui permet de recréer le nouveau régime de la deltarpm et l'ancien. Vous ne devez pas avoir une copie de l'ancien rpm, deltarpms peut également fonctionner avec rpms installés.