Как конвертировать из RPM в DEB и DEB в RPM-пакет с помощью Alien
Я уверен, вы уже знаете, что существует множество способов установки программного обеспечения в Linux: использование системы управления пакетами, предоставляемой вашим дистрибутивом (например, aptitude, yum или zypper), компиляция из исходного кода (хотя и несколько редкий в наши дни, это был единственный метод, доступный в первые дни Linux), или использование низкоуровневого инструмента, такого как dpkg или rpm с .deb %files и удалите строки, которые относятся к каталогам, упомянутым в сообщении об ошибке, затем сохраните файл и выйдите:

Когда вы выходите из файла, вам будет предложено продолжить восстановление. Если вы выберете Y, файл будет перестроен в указанный каталог (отличный от текущего рабочего каталога):
# rpmrebuild –pe dateutils-0.3.1-2.1.x86_64.rpm

Теперь вы можете приступить к установке пакета и проверке, как обычно:
# rpm -Uvh /root/rpmbuild/RPMS/x86_64/dateutils-0.3.1-2.1.x86_64.rpm # rpm -qa | grep dateutils
Наконец, вы можете перечислить отдельные инструменты, которые были включены в dateutils, и в качестве альтернативы проверить их соответствующие справочные страницы:
# ls -l /usr/bin | grep dateutils

Шаг 3: Преобразование пакета .rpm в .deb
В этом разделе мы покажем, как преобразовать файл .rpm в .deb. В 32-разрядной системе Debian Wheezy загрузим пакет .rpm для оболочки zsh из ОС CentOS 6. репозиторий. Обратите внимание, что эта оболочка по умолчанию недоступна в Debian и производных версиях.
# cat /etc/shells # lsb_release -a | tail -n 4

# wget http://mirror.centos.org/centos/6/os/i386/Packages/zsh-4.3.11-4.el6.centos.i686.rpm # alien --to-deb --scripts zsh-4.3.11-4.el6.centos.i686.rpm
На сообщения об отсутствии подписи можно смело не обращать внимания:
Через несколько секунд файл .deb должен быть сгенерирован и готов к установке:
# dpkg -i zsh_4.3.11-5_i386.deb
После установки вы можете убедиться, что zsh добавлен в список допустимых оболочек:
# cat /etc/shells

Краткое содержание
В этой статье мы объяснили, как преобразовать .rpm в .deb и наоборот, чтобы установить пакеты в крайнем случае, когда такие программы недоступны в репозиториях или в виде распространяемого исходного кода. Вы захотите добавить эту статью в закладки, потому что всем нам когда-нибудь понадобится инопланетянин.
Не стесняйтесь поделиться своими мыслями об этой статье, используя форму ниже.
Создание rpm-пакетов из deb-пакетов
Программа GUI-deb предназначена для создания пакетов в формате deb. Однако, из пакетов в формате deb можно легко получить пакеты в другом очень популярном формате — rpm. Сделать это можно при помощи утилиты alien.
Чтобы получить из deb-пакета rpm-пакет, достаточно запустить alien со следующими параметрами:
sudo alien —to-rpm —scripts ./mypackage_1.0.0_i368.deb
Здесь «mypackage_1.0.0_i368.deb» надо заменить на название файла пакета, который вам нужно преобразовать. Имя получаемого пакета в формате rpm будет автоматически сформировано alien на основе содержащейся в пакете информации. Параметр «—scripts» сообщает alien, что при преобразовании также надо конвертировать содержащиеся в пакете инсталляционные скрипты (подробнее о скриптах написано в разделе «Скрипты в deb-файле»). Запуск через sudo (с правами root) нужен для правильной установки прав на содержащиеся в пакете файлы — если запустить alien не с правами root, программа выдаст предупреждающее сообщение о том, что права на файлы, возможно, установлены неправильно.
Программа GUI-deb может автоматически запускать alien после сборки deb-пакета для получения из него rpm-пакета.
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 c tar.xz пакет в rpm?

Внутри у него какие-то tar.xz, я в Linux новичок. Использую Linux Alt. Тут сказано использовать:
epm repack
Но команда не создала rpm пакет.
Вывела под конец вот это.
Не могу в интернете что-то подходящее найти. Можете что-нибудь, пожалуйста, хотя бы скинуть, почитать на данную тему.
- Вопрос задан 20 дек. 2023
- 111 просмотров
1 комментарий
Простой 1 комментарий