Ich möchte ein Paket mit yum installieren und nicht mit rpm, aber mit demselben Verhalten wie --replacefiles
in rpm. Ich habe ein Paket, das Dateikonflikte mit anderen hat, und ich muss die Installation mit yum erzwingen. Dieses Paket gehört mir, also kann ich die Spezifikationsdatei ändern.
Antwort1
Sie könnenTrigger-Skriptletsdafür.
Zur Veranschaulichung nehmen wir an, dass die Datei /etc/contested
einem RPM mit dem Namen gehört generally
und Sie ein anderes Paket ( specifically
) haben, das die gleiche Datei zwangsweise überschreiben möchte.
In specifically.spec
installieren Sie die neue Version der Datei in %{_datadir}/%{name}/etc.contested
und verwenden dieses Trigger-Scriptlet, um sie in zu installieren /etc
:
%triggerin -- generally install -m 0644 %{_datadir}/%{name}/etc.contested %{_sysconfdir}/contested
Das Skriptlet wird bei jeder generally
Installation oder Aktualisierung sowie bei jeder specifically
Installation oder Aktualisierung ausgeführt.
RPM erkennt zwar immer noch, dass die Datei nicht den Erwartungen entspricht, hindert Sie jedoch nicht an der Installation oder Deinstallation.
Antwort2
Wenn Sie die Spezifikationsdatei ändern können, können Sie möglicherweise die Dateien entfernen, die im Dateiabschnitt in Konflikt stehen? Geben Sie in diesem Abschnitt einen Ordner an? Oder Datei für Datei?