Jak wyodrębnić plik RPM?


32

Mam plik RPM, którego zawartość chcę sprawdzić. W przypadku .debpakietów mogę dpkg -x file.debgo wyodrębnić.

Jakie jest równoważne polecenie dla .rpmpliku? Szukam aplikacji wiersza polecenia.

Odpowiedzi:


45

file-rollerwydaje się otwierać pliki RPM . Alternatywnie możesz użyć polecenia:

$ sudo apt-get install rpm2cpio
$ rpm2cpio /path/to/file.rpm | cpio -i --make-directories

który wyodrębni zawartość rpm do bieżącego katalogu.


Dzięki, właśnie natknąłem się na to:rpm2cpio file.rpm | cpio --extract --make-directories
Lekensteyn,

5

O ile pamiętam, musisz użyć aplikacji o nazwie alien, która przekształca .rpm w pliki deb. Użyj terminalu, aby:

sudo apt-get install alien

następnie

sudo alien -d nameofyourpackage.rpm (-d for Debian package)

Jeśli musisz to sprawdzić, możesz skorzystać z metody dpkg -x file.deb


rpm2cpiowydaje się działać dobrze, więc nie próbowałem tego.
Lekensteyn,

1
ma to tę wadę, że najpierw tworzy .deb.
enzotib

3

Zainstaluj 7z:

apt install p7zip-full

i wyodrębnij:

7z x /path/to/file.rpm 
7z x /path/to/file.cpio -o/path/to/extract/folder/

Niestety 7z nie wie o uprawnieniach do plików, a dla pakietów rpm zawierających pliki wykonywalne (tj. Większość z nich) może to stanowić problem.
Wug

1

Możesz także użyć Cudzoziemca, aby wyodrębnić tylko pliki (które nazywa „wygeneruj drzewo kompilacji”)

alien --scripts --generate <package.rpm>

Dostaniesz 2 katalogi - <package>i <package>.orig, czyli surową ekstrakcję z rpm.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.