Как переделать deb в rpm
Перейти к содержимому

Как переделать deb в rpm

  • автор:

Чем и как пересобрать *.DEB —> *.RPM

Сразу перейду к делу, без предыстории, если позволите.

Вообщем, есть у меня с дюжину пакетов собранных под debian lenny, и ни под какой другой не совместимый с ним дистрибутив пакетов нет. И не ожидается.

Вопрос, чем и как можно сконвертировать пакеты под centos 5?

Я с rpm-based дистрибутивами мало знаком, знаю что есть alien, но насколько знаю, он делает обратное действие rpm —> deb, да и криво он это делает зачастую.

Как лучше решить данный вопрос?

Может проще помучать разработчика и выпросить сорцы? Вариант не очень перспективный ибо врятли он их даст.

Как конвертировать rpm в deb

Порою случается так, что необходимая программа для вашего Ubuntu доступна только в виде rpm-пакета. Это не беда, ведь конвертировать rpm в deb можно весьма простым способом.

Для того, чтобы конвертировать rpm в deb, выполните следующие действия:

  1. Откройте Терминал и выполните установку пакета alien, необходимого для конвертации: Как конвертировать rpm в deb(возможно, что после выполнения этой команды, Ubuntu предложит вам установить дополнительные пакеты и библиотеки, необходимые для работы alien. Нажмите Y, соглашаясь с предложенным).
  2. После успешной установки alien, конвертируйте, полученный вами из сети, rpm-пакет (в моем примере это пакет smallerpump.rpm) в deb, выполнив команду: Как конвертировать rpm в deb
  3. После успешной конвертации rpm в deb, вы можете с легкостью установить deb-пакет, выполнив команду: sudo dpkg -i smallerpump.deb
Остались вопросы?

Если у Вас что-то не получилось или остались вопросы по данной проблеме — обратитесь к автору и он Вам поможет.

Станьте одним из экспертов!

Мы будем рады видеть в своих рядах людей, которые могут поделиться своим опытом с другими!

Linux (любые дистрибутивы), MS Windows, Cisco, Python и многое другое.

Более чем 20-летний опыт в IT позволяет мне давать Вам мудрые советы.

ROSAForum

Уважаемые форумчане, всем привет!
Ситуация: Есть желание установить нативную 1С. На данный момент использую через wine (не то что бы не устраивало, но не все идеально работает, плюс конечно шрифты не комильфо смотрятся при таком варианте).
В свое время мне удалось раздобыть deb-пакеты 1С версии 8.3 которую я удачно использовал и устанавливал в LinuxMint.
Сейчас же хочу конвертировать deb-пакеты в rpm.
Имеются следующие пакеты:

Изображение

Использую команду для конвертации
# alien —to-rpm —scripts ./1c-enterprise83-client-nls_8.3.1-531_amd64.deb

В ответ получаю длинный список повторяющейся однотипной строчки и в конце указание о некой ошибке:

1c-enterprise83-client-nls.x86_64: E: dir-or-file-in-opt (Badness: 50) /opt/1C/v8.3/x86_64/schemui_uk.res

1c-enterprise83-client-nls.x86_64: E: dir-or-file-in-opt (Badness: 50) /opt/1C/v8.3/x86_64/perform_lt.res

1c-enterprise83-client-nls.x86_64: E: dir-or-file-in-opt (Badness: 50) /opt/1C/v8.3/x86_64/imageui_vi.res

1c-enterprise83-client-nls.x86_64: E: dir-or-file-in-opt (Badness: 50) /opt/1C/v8.3/x86_64/frntend_lt.res

1c-enterprise83-client-nls.x86_64: E: dir-or-file-in-opt (Badness: 50) /opt/1C/v8.3/x86_64/moxelui_de.res

1 packages and 0 specfiles checked; 694 errors, 4 warnings.
(none): E: badness 17697 exceeds threshold 49.
error: Package check «/usr/bin/rpmlint -T -f /root/rpmbuild/SOURCES/1c-enterprise83-client-nls.rpmlintrc ../1c-enterprise83-client-nls-8.3.1-532.x86_64.rpm» failed.

Ошибки сборки пакетов:
Обнаружен(ы) установленный(е) (но не упакованный(е)) файл(ы):
/1c-enterprise83-client-nls-8.3.1-532.spec
Package check «/usr/bin/rpmlint -T -f /root/rpmbuild/SOURCES/1c-enterprise83-client-nls.rpmlintrc ../1c-enterprise83-client-nls-8.3.1-532.x86_64.rpm» failed.

При этом в каталоге rpm-пакет создан:

Изображение

Собственно что это за ошибка, как понимаю пакет имеет ошибку и не факт что после установки программа будет работать корректно?
Вообще, есть ли смысл заниматься конвертированием пакетов из deb в rpm в случае с пакетами для 1С?

laguna

PastorDi Сообщения: 2743 Зарегистрирован: 25 авг 2011, 12:34 Operating system: IBM DOS, OS/2 Откуда: Санкт-Петербург Контактная информация:

Как конвертировать DEB в RPM и наоборот

Ответ: Спасибо за комплименты, в то небольшое количество свободного времени, которое у меня есть, я пытаюсь поделиться своими знаниями о мире Linux, потому что я хочу помочь распространить информацию, а также потому, что я верю в философию, которую представляет Linux (Столлман Диксит). Что касается конверсии, конечно, можно. Вам просто нужно установить программу иностранец.

  • 1 Конвертировать RPM в DEB
  • 2 Конвертировать DEB в RPM
  • 3 Конвертировать в SLP, LSB, Slackware TGZ

Конвертировать RPM в DEB

1.- Установить иностранец. В Debian и производных версиях это будет выглядеть так:

sudo apt-get установить инопланетянина

2.- Теперь осталось только использовать пришельца для преобразования.

чужой mypackage.rpm

Готов! Теперь вы можете установить пакет DEB, созданный с помощью команды Dpkg или просто дважды щелкнув по нему.

Конвертировать DEB в RPM

Чтобы преобразовать в RPM, вы должны использовать опцию -r.

sudo alien -r mypackage.deb

Готов! Теперь вы можете установить пакет RPM, созданный с помощью команды rpm на вашей Fedora, CentOs и т. д.

Конвертировать в SLP, LSB, Slackware TGZ

Alien также позволяет конвертировать пакеты в форматы, используемые в других дистрибутивах: Stampede slp, LSB и Slackware tgz.

Чтобы увидеть доступные варианты, запустите:

чужой -h

Чтобы вы могли взглянуть, вывод этой команды выглядит следующим образом:

Использование: чужой [параметры] файл [. ] файл [. ] Пакетный файл или файлы для преобразования. 
-d, --to-deb Создать пакет Debian deb (по умолчанию).
Включает эти параметры:
--patch = Указать файл патча для использования вместо автоматического
ищу патч в / var / lib / alien.
--nopatch Не используйте патчи.
--anypatch Использовать исправления даже старых версий ОС.
-s, --single Подобно --generate, но не создавать .orig
каталог.
--fixperms Изменять / исправлять разрешения и владельцев.
--test Проверять сгенерированные пакеты с помощью lintian.
-r, --to-rpm Создать rpm-пакет Red Hat.
--to-slp Создать пакет Slp Stampede.
-l, --to-lsb Создать пакет LSB.
-t, --to-tgz Создать tgz-пакет Slackware.
Включает эти параметры:
--description = Укажите описание пакета.
--version = Укажите версию пакета.
-p, --to-pkg Создать пакет Solaris pkg.
-i, --install Установить сгенерированный пакет.
-g, --generate Создать дерево сборки, но не создавать пакет.
-c, --scripts Включить скрипты в пакет.
-v, --verbose Показать каждую команду, выполняемую пришельцем.
--veryverbose Подробно, а также отображать вывод команд запуска.
-k, --keep-version Не изменять версию сгенерированного пакета.
--bump = number Увеличить версию пакета на это число.
-h, --help Показать это справочное сообщение.
-V, --версия Показать номер версии пришельца.

Спасибо Фавио Тапиа Веласкес за предложение темы!

Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Полный путь к статье: Из Linux » ФайлДавайте использовать Linux » Как конвертировать DEB в RPM и наоборот

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *