Entfernen Sie eine RPM-Datei, ohne eine der Dateien zu berühren

Entfernen Sie eine RPM-Datei, ohne eine der Dateien zu berühren

Ich habe gerade ein völlig falsch gepacktes RPM auf meiner OpenSUSE-Distribution installiert (der Paketierer hat es als Datei des Pakets hinzugefügt /, /usr/*sodass ich es nicht deinstallieren kann, ohne das gesamte Root-FS zu löschen).

Wie kann ich das Paket entfernen, ohne die deklarierten Dateien zu berühren?

Hier sind die Infos:

rpm -qi nnn-4.0-1.x86_64
Name        : nnn
Version     : 4.0
Release     : 1
Architecture: x86_64
Install Date: Fri 28 May 2021 01:53:46 CEST
Group       : other
Size        : 112871
License     : BSD 2-Clause
Signature   : (none)
Source RPM  : nnn-4.0-1.src.rpm
Build Date  : Tue 13 Apr 2021 13:19:31 CEST
Build Host  : 43528e776956
Packager    : Arun Prakash Jana <[email protected]>
URL         : https://github.com/jarun/nnn
Summary     : The unorthodox terminal file manager.
Description :

Distribution: (none)
rpm -ql nnn-4.0-1.x86_64
/
/usr
/usr/bin
/usr/bin/nnn
/usr/share
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/nnn.1.gz

Antwort1

Ich erinnere mich vage an rpmdie zahlreichen Optionen und überprüfe dieHandbuch, ich denke, das hier sollte funktionieren:

rpm -e --justdb nnn
rm /usr/bin/nnn /usr/share/man/man1/nnn.1.gz

Achtung: ungetestet, überprüfen Sie zuerst Ihre Backups.

Antwort2

Das RPM entfernt das Verzeichnis nicht, wenn das Verzeichnis einem anderen Paket gehört (und es gehört filesystem) oder wenn es andere Dateien gibt, die keinem anderen Paket gehören.

Mit anderen Worten: rpm -qDieses Paket löscht Ihr System nicht.

verwandte Informationen