Я только что установил совершенно неправильно упакованный RPM в свой дистрибутив openSUSE (упаковщик добавил /
и /usr/*
как файл пакета, поэтому я не могу удалить его, не удалив всю корневую файловую систему)
Как удалить пакет, не трогая ни одного из заявленных файлов?
Вот информация:
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
решение1
Смутно припоминая rpm
многочисленные варианты, и проверяяруководство, я думаю, это должно сработать:
rpm -e --justdb nnn
rm /usr/bin/nnn /usr/share/man/man1/nnn.1.gz
Предупреждение: не проверено, сначала проверьте резервные копии.
решение2
RPM не удалит каталог, если он принадлежит какому-либо другому пакету (и им владеет filesystem
) или если в нем есть какие-либо другие файлы, не принадлежащие никакому другому пакету.
Другими словами: rpm -q
этот пакет не сотрет вашу файловую систему.