파일을 건드리지 않고 RPM 파일 제거

파일을 건드리지 않고 RPM 파일 제거

방금 openSUSE 배포판에 완전히 잘못 패키지된 RPM을 설치했습니다(패키저가 패키지의 파일로 추가되었으므로 /전체 /usr/*루트 FS를 지우지 않고는 제거할 수 없습니다).

선언된 파일을 건드리지 않고 패키지를 제거하려면 어떻게 해야 합니까?

정보는 다음과 같습니다.

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이 패키지는 fs를 지우지 않습니다.

관련 정보