Распаковка пакетов DEB / RPM

Распаковка пакетов DEB / RPM

Я собираю пакеты для #Debian и #RHEL. И зачастую, мне необходимо посмотреть содержимое собранного пакета, чтобы удостоверится в правильности сборки и корректности расположения файлов внутри пакета. В этой статье кратно расскажу, как и при помощи чего можно посмотреть собранные пакеты.

DEB

Пакет .deb архивируется при помощи ar. Соответственно, распаковать пакет тоже следует через данный архиватор:

1
ar x example.deb
  • debian-binary – файл, содержащий версию формата .deb.
  • control.tar.xz – файл, содержащий md5sums и директорию для сборки пакета.
  • data.tar.xz – архив, содержащий все файлы, которые должны быть установлены в системе при установке пакета.

RPM

Пакет .rpm содержит архив cpio. Имеется удобная утилита rpm2cpio, которая преобразует .rpm в архив cpio.

1
2
3
rpm2cpio myrpmfile.rpm
rpm2cpio - < myrpmfile.rpm
rpm2cpio myrpmfile.rpm | cpio -idmv

Опции rpm2cpio:

  • -i - восстановить архив.
  • -d - создать необходимые каталоги.
  • -m - сохранить время модификации файлов.
  • -v - подробный вывод процесса преобразования.

Также, просматривать .rpm можно при помощи файлового менеджера Midnight Commander (MC) (mc).