ГлавнаяОперационные системыLinuxКак преобразовать 32-битные пакеты RPM в DEB в 64-битной системе

Как преобразовать 32-битные пакеты RPM в DEB в 64-битной системе

В одной из наших предыдущих статей уже рассматривались основы использования форматов от alienдо конвертировать из .deb в rpm . Хотя Alien — отличный инструмент, который предлагает пользователям дистрибутива RPM доступ к гораздо более обширным пакетам DEB, его использование не ограничивается преобразованием deb в RPM.

Сам инструмент способен на гораздо большее. Помимо более продвинутых функций на базовом уровне, Alien может конвертировать любой из следующих форматов упаковки:

  • DEB – широко известный формат пакетов Debian, который используют все производные Debian, а значит и всё семейство Ubuntu. Возможно, наиболее широко используемая система пакетов в Linux.
  • RPM — собственный подход DedHat к упаковке, используемый RHL, Fedora, CentOS, Mageia, OpenSUSE и многими другими.
  • SLP — формат упаковки Stampede Linux. Это интересное дополнение, поскольку Стампид Linux был активен только в период с 1997 по 2002 год, так и не получив широкой популярности и не став «базовым дистрибутивом», как другие, несмотря на то, что на самом деле он был перспективный подход к развитию назад. в 1997 году
  • LSB – попытайтесь создать RPM-пакет, полностью совместимый с младший бит , хотя, как указано на странице руководства Alien, «никаких гарантий не дается, что сгенерированные пакеты lsb будут полностью совместимы с LSB, и это скорее вряд ли они это сделают, если вы не создадите их в среде lsbdev».
  • TGZ – архивы tar или tar.gz. Конвертация из этих архивов будет работать только в том случае, если они содержат двоичные файлы. (Другими словами, он не будет работать с архивами исходного кода.)

От 32-битной до 64-битной версии

При работе в 64-битной системе вы можете столкнуться с 32-битными пакетами RPM, которые захотите преобразовать в DEB (или наоборот). В таких случаях Alien, скорее всего, выдаст ошибку.

Попытка преобразовать 32-битный файл RPM в 64-битной системе Debian приведет к ошибке «.rpm предназначен для архитектуры i386; пакет не может быть собран в этой системе».

Alien32on64-ошибка

Решение – небольшой обходной путь. В качестве посредника вы можете использовать способность Alien конвертировать в простые архивы TGZ.

Для этого используйте переключатель -t(или --to-tgz). Используйте

sudo alien -ct somepackage.rpm

или

sudo alien -c --to-tgz somepackage.rpm

затем конвертируйте из tgz в DEB. Для этого не требуется никакого дополнительного переключения, поскольку преобразование в DEB является стандартным.

sudo alien -c somepackage.tgz

Wine32on64-успех

Заключение

Alien имеет возможность плавного преобразования между различными форматами упаковки. Хотя преобразование 32-битных пакетов в 64-битных системах может показаться невозможным, при небольшом обходном пути это просто становится двухэтапным процессом. Немного более неудобный, но все же простой и простой трюк, который позволит вам конвертировать 32-битные пакеты RPM в DEB даже в 64-битных системах.

ПОХОЖИЕ СТАТЬИ

Популярные записи