У меня есть жгучее желание установить RPM на мою установку Ubuntu - возможно ли это? Могу ли я использовать Yum - или другой инструмент управления пакетами RPM?
Могу ли я использовать Yum
Я бы не рекомендовал этого делать. Вероятно, вы могли бы скомпилировать его, но у вас не было бы никаких репозиториев пакетов, совместимых с Ubuntu, для его обработки.
Вы мочь конвертируйте отдельные файлы RPM в DEBs с помощью Alien:
sudo apt-get install aliensudo alien my_package.rpmsudo 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 не менял номер версии, используйте следующую команду
alien -k rpm-package-file.rpm
Короткий ответ таков, Не надо!
Если у вас есть RPM, который настолько важен, что он вам нужен, вероятно, также есть пакет Ubuntu; а если нет, вероятно, стоит попробовать скомпилировать его из исходного кода в формат пакета Debian (который также использует Ubuntu). Теперь бывают определенные моменты, когда вы не можете просто перекомпилировать программное обеспечение (если оно не с открытым исходным кодом, это невозможно), и в этом случае вы можете использовать alien
программа. Но установка с оборотов в минуту немного похожа на заправку бензином дизельного автомобиля - это может сработать, но в долгосрочной перспективе вы от этого не выиграете!
Чтобы создать пакет из исходного кода, существует проводник на Ubuntu Wiki; есть также программа под названием проверьте установку это может проделать некоторые трюки с исходным деревом по умолчанию без настройки инструкций по сборке для пакета. Если вы считаете, что кто-то другой может извлечь выгоду из программ, которые вы компилируете, вы можете настройка репозитория на панели запуска и поделитесь пакетом goodness!
В репозиториях есть менеджер пакетов с графическим интерфейсом с именем SmartPM, он может обрабатывать .deb И .RPM. Canonical участвовала в этом проекте до ноября 2009 года.
Домашняя страница проектов находится здесь https://github.com/smartpm/smart
Если вам действительно нужно установить RPM в вашей системе, вы действительно должны попытаться преобразовать их с помощью 'alien'.
Пожалуйста, имейте в виду, что по умолчанию "чужой" будет вмешиваться в номер версии пакета. Если вы хотите, чтобы номер версии остался прежним, передайте параметр "-k" при преобразовании.
Вы не должны пытаться использовать Yum или любой другой способ установки самих RPM, таких как apt-rpm, рядом с существующими пакетами DEB. Системы DEB и RPM управляют списком установленного программного обеспечения отдельно и поэтому не знают, какие пакеты были установлены ранее другой системой. Если, например, вы попытаетесь установить приложение с графическим интерфейсом с системой управления пакетами на основе RPM, оно попытается само установить жизненно важные системные компоненты, поскольку считает, что они еще не установлены. Это приведет либо к ужасному сбою установки, либо к перезаписи жизненно важных системных файлов.
Alien - это инструмент для преобразования из одного формата (.deb или .rpm) в другой (.deb, .rpm или tarball).
Alien не рекомендуется использовать при преобразовании из .deb в .rpm, его идеально использовать при преобразовании .deb в tarballs
Несмотря на то, что Alien пытается сохранить метаданные при преобразовании, но у него все равно будут проблемы с метаданными и зависимостями, что делает пакет менее надежным и, следовательно, приведет к конфликтам при добавлении или удалении пакетов распределения в будущем.
На самом деле самый короткий вариант - это
sudo alien -i -k packagename.rpm
У вас нет инопланетянина? Возьми один!
sudo apt-get install alien
Alien преобразует пакет rpm в пакет deb, опция -i означает установку преобразованного пакета после преобразования, а опция -k гарантирует, что версия не равна +1 после преобразования.
Следуйте этим инструкциям:
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.
Установите alien в Ubuntu:
sudo apt-get install alien
Вы можете проверить наличие доступных опций в приведенном выше разделе
С помощью alien я могу просто преобразовать файл .rpm в .файл deb и просто установите его.
Alien доступен в обычных репозиториях Debian, поэтому мы можем установить его следующим образом:
sudo apt-get install alien
Чтобы преобразовать его в пакет .deb, мы просто запускаем
alien *.rpm
Вот графический интерфейс для Alien (alien - это приложение для преобразования rpm в deb)
В своей повседневной работе я являюсь системным администратором Linux и администрирую в основном машины Redhat. Я люблю Ubuntu за то, что мне не нужно брать свою работу с собой домой, но некоторые вещи, которые Debian использует для настройки (в основном Apache), действительно сводят меня с ума. Я скорее предпочитаю способ, которым RH поддерживает программное обеспечение apache. Таким образом, поддержание двух решений для управления пакетами (yum и aptitude) кажется более идеальным решением (если это возможно).
Почему? Какого программного обеспечения вам не хватает, которое вы не можете найти в Ubuntu или PPA? Преобразование оборотов в минуту с помощью alien работает, но на самом деле это не лучший вариант.