Как мне установить и управлять RPM?
У меня есть жгучее желание установить RPM на мою установку Ubuntu - возможно ли это? Могу ли я использовать Yum или другой инструмент управления пакетами RPM?
11 ответов
Могу ли я использовать Yum
Я бы не рекомендовал это. Вы, вероятно, могли бы скомпилировать его, но у вас не было бы никаких Ubuntu-совместимых репозиториев пакетов для его обработки.
Вы можете конвертировать отдельные RPM-файлы в DEB с помощью Alien:
sudo apt-get install alien
sudo alien my_package.rpm
sudo dpkg -i my_package.deb
Примечание: это может изменить имя файла немного больше, чем просто расширение.
Это не будет работать для всех, так как пакеты ссылаются на другие пакеты для выполнения зависимостей. Очевидно, что Red Hat/Fedora/CentOS используют разные имена пакетов для Ubuntu, так что вы, вероятно, столкнетесь с целым бременем боли.
Скорее всего, если DEB не существует, вам будет лучше просто получить исходный код и скомпилировать его.
Тебе понадобится alien
сделать это.
sudo apt-get install alien
Это установит все необходимые пакеты. Теперь вы можете начать преобразование ваших файлов.rpm в пакеты.deb.
Доступные варианты для alien
:
Преобразуйте package.rpm в package.deb
sudo alien -d package-name.rpm
Преобразовать package.rpm
в package.deb
и установите сгенерированный пакет.
alien -i package-name.rpm
Если вы не хотите, чтобы чужой изменил номер версии, используйте следующую команду
alien -k rpm-package-file.rpm
Краткий ответ: не надо!
Если у вас есть RPM, который настолько важен, что вам нужно его иметь, вероятно, есть и пакет Ubuntu; и если нет, то, вероятно, стоит попытаться скомпилировать его из исходного кода в формат пакета Debian (который также использует Ubuntu). Теперь, есть определенные моменты, когда вы не можете просто перекомпилировать программное обеспечение (если оно не с открытым исходным кодом, это невозможно), и в этом случае вы можете использовать alien
программа. Но установка с RPM - это все равно, что заправлять бензин в дизельную машину - это может сработать, но в долгосрочной перспективе вы от этого не выиграете!
Чтобы собрать пакет из исходного кода, есть руководство по Ubuntu Wiki; Существует также программа под названием checkinstall, которая может выполнить некоторые трюки с исходным деревом по умолчанию, не задавая инструкции по сборке для пакета. Если вы думаете, что программы, которые вы компилируете, могут извлечь выгоду для кого-то другого, вы можете установить репозиторий на панели запуска и поделиться преимуществами пакета!
В Repos есть менеджер пакетов графического интерфейса с именем SmartPM, он может обрабатывать.deb AND .RPM. Canonical участвовал в этом проекте до ноября 2009 года.
Домашняя страница проектов находится здесь https://github.com/smartpm/smart
Если вам действительно необходимо установить RPM в вашей системе, вам действительно следует попытаться преобразовать их, используя "чужую".
Пожалуйста, имейте в виду, что по умолчанию "пришелец" будет вмешиваться в номер версии пакета. Если вы хотите, чтобы номер версии оставался прежним, при конвертации передайте опцию '-k'.
Вам не следует пытаться использовать Yum или любой другой способ установки RPM, например apt-rpm, рядом с существующими пакетами DEB. Системы DEB и RPM управляют списком установленного программного обеспечения отдельно и поэтому не знают, какие пакеты были установлены ранее другой системой. Например, если вы попытаетесь установить приложение с графическим интерфейсом пользователя с помощью системы управления пакетами на основе RPM, оно попытается установить жизненно важные компоненты системы, поскольку считает, что они еще не установлены. Это может либо привести к ужасному сбою установки, либо перезаписать важные системные файлы.
Следуйте этим инструкциям:
alien -k avg71lms-r30-a0782.i386.rpm
Теперь вы должны иметь avg71lms-r30-a0782.i386.deb
файл.
Чтобы установить файл.deb:
dpkg -i avg71lms-r30-a0782.i386.deb
Если вы не используете -k
вариант, который вы должны увидеть avg71lms_r30-1_i386.deb
файл разница в том, что он добавит 1.
Установить инопланетянина в Ubuntu:
sudo apt-get install alien
Вы можете проверить выше раздел для доступных опций
На самом деле самый короткий вариант
sudo alien -i -k packagename.rpm
Нет иностранца? Получить один!
sudo apt-get install alien
Alien преобразует rpm-пакет в deb-пакет, опция -i означает установить конвертированный пакет после конвертации, а опция -k гарантирует, что версия не будет +1 после конвертации.
Alien - это инструмент, который конвертирует из одного формата (.deb или.rpm) в другой (.deb,.rpm или tarball)
Alien не рекомендуется использовать при конвертации из.deb в.rpm, его идеально использовать для конвертации.deb в тарболлы
Althought Alien пытается сохранить метаданные при конвертации, но у него все еще будут проблемы с метаданными и зависимостями, что сделает пакет менее надежным и, следовательно, приведет к конфликтам при добавлении или удалении дистрибутивных пакетов в будущем.
С инопланетянином я могу просто преобразовать файл.rpm в файл.deb и просто установить его.
Alien доступен в обычных репозиториях Debian, поэтому мы можем установить его следующим образом:
sudo apt-get install alien
Чтобы преобразовать его в пакет.deb, мы просто запускаем
alien *.rpm
Использовать иностранца, который конвертирует rpm в deb и впоследствии устанавливает deb.
Вот графический интерфейс для Alien (Alien это приложение для преобразования rpm в deb)
http://code.google.com/p/foxoman/wiki/PackageConverter