Alien linux как пользоваться

Обновлено: 04.07.2024

Обычно, когда поставщик программного обеспечения не предоставляет репозиторий, у него будет страница загрузки, откуда вы можете загрузить и установить пакет deb или загрузить и скомпилировать программное обеспечение из источников.

Подготовка

Это не рекомендуемый способ установки пакетов программного обеспечения в Ubuntu. По возможности рекомендуется устанавливать программное обеспечение из репозиториев Ubuntu.

Не все пакеты RPM можно установить в Ubuntu. Установка RPM в Ubuntu может привести к конфликтам зависимостей пакетов.

Вы никогда не должны использовать этот метод для замены или обновления важных системных пакетов, таких как libc, systemd или других служб и библиотек, которые необходимы для правильного функционирования вашей системы. Это может привести к ошибкам и нестабильности системы.

Установить Alien

Перед установкой пакета alien убедитесь, что в вашей системе включен репозиторий Universe:

После включения репозитория обновите индекс пакетов и установите чужой пакет с помощью:

Приведенная выше команда также установит необходимые инструменты сборки.

Преобразование и установка пакета RPM

Чтобы преобразовать пакет из формата RPM в формат DEB, используйте команду alien, за которой следует имя пакета RPM:

Чтобы установить пакет deb , вы можете использовать утилиту dpkg или apt :

Теперь пакет должен быть установлен, если он совместим с вашей системой, и все зависимости соблюдены.

Вам нужно будет войти в систему как пользователь с доступом sudo, чтобы иметь возможность устанавливать пакеты в вашей системе Ubuntu.

Установка пакета RPM напрямую

Вместо конвертации и последующей установки пакета вы можете использовать параметр -i который сообщает alien установить пакет RPM напрямую.

Приведенная выше команда автоматически сгенерирует и установит пакет и удалит файл пакета после его установки.

Выводы

В этом руководстве мы показали вам, как устанавливать пакеты RPM в Ubuntu.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Задавшись целью создать репозиторий Cintu для номинации её как полноценного дистрибутива, я для начала решил сделать прототип оного. И, разумеется, поместить в него пакеты из числа тех, что не окучены ни в официальном репозитории Ubuntu, ни в PPA.

Все кандидаты на включение в прото-репозиторий (шрифты, русский спеллинг с поддержкой Ё, простенький редактор micro) были очень просты, и возиться со всамделишней сборкой посредством apt-build или чего-то подобного показалось мне нецелесообразным. К тому же все они (кроме micro ) имелись в бинарном виде в «домашних» репозиториях openSUSE или в Arch User Repository. И потому я воспользовался утилитой alien .

Так что проще воспользоваться утилитой fakeroot , которая имеется и в midi-, и в maxi-редакции Cintu. А в произвольной системе Ubuntu based её можно установить из официального репозитория:

Утилита fakeroot после запуска (кстати, не требующего ввода пароля) создаёт «псевдоадминистративное окружение». Как и sudo , её можно использовать двояко. Во-первых, дать команду

после которой последует две жалобы на «несекьюрность» текущего каталога (в обоих случаях надо отвечать согласием, то есть y ), после чего в приглашении командной строки вместо пользователя можно увидеть «администратора». То есть в Cintu по умолчанию это будет выглядеть так:

Однако реальным пользователем всё равно остаётся тот, кто запустил fakeroot , в чём легко убедиться такой командой:

Теперь можно дать команду конвертации, например, такую:

При необходимости команду можно повторить для следующего файла, или задать сразу несколько аргументов. А по окончании всей процедуры конвертации — вернуться в нормальную пользовательскую среду командой exit . И убедиться, что владельцем конвертированного файла будет не root , как в случае применения sudo , а пользователь:

Если требуется конвертировать единичный пакет — можно поступить проще:

С тем же самым результатом:

Внимательный читатель обратил внимание, что в списке поддерживаемых утилитой alien форматов нет tar.xz ( txz ), а утилита xz нынче часто используется для компрессии тарбаллов. И действительно, напрямую конвертировать файл с таким суффиксом не удастся:

Однако тут помогает нехитрая уловка — банальное переименование tar.xz в tar.gz , поскольку alien сам непосредственно распаковкой и упаковкой архивов не занимается.

И действительно, если выполнить такую операцию:

А уже затем дать команду конвертации, всё пройдёт без сяких яких:

Команду alien можно применять не только к пакетам какого-либо дистрибутива, но и к абстрактным тарбаллам — выше это было проделано для редактора micro , откомпилированный бинарник которого скачан с официального сайта проекта.

Более того, alien работает даже с самосборными тарбаллами. Например, шрифта Monofur в виде пакета не найти, наверное, ни в одном дистрибутиве. Он доступен в виде zip-архива в одной из шрифтовых коллекций. Его можно распаковать, входящие файлы распихать по нужным подкаталогам (собственно шрифты monof55.ttf и monof56.ttf — в usr/share/fonts/truetype , текст лицензии monof_tt.txt в usr/share/licenses ), а из родительского каталога сделать архив monofur-otf_1-1_all.tar.gz и подсунуть его в качестве аргумента команды alien . С генерацией deb-пакета на выходе. Да, это не эстетично идеологично, зато «дёшево, надёжно и практично».

И в заключение — очень важное замечание: применять утилиту alien целесообразно только к простым пакетам, без многочисленных зависимостей и сложных установочных сценариев — именно таковы были все рассмотренные выше случаи. В противном случае не гарантируется не то что превосходный, но даже просто приемлемый результат.

2 комментария к “ Утилита alien: конвертация пакетов в deb-формат ”

Спасибо, Алексей, очень интересный материал, в особенности по конвертации из tar.gz и переименованию для этого tar.xz.
Только вопрос, в результате конвертации все файлы будут иметь в конце all.deb? По приведённому в качестве примера редактора micro на сайте предлагаются архивы для Linux:
micro-3afb3d0-linux32.tar.gz и micro-3afb3d0-linux64.tar.gz.
На выходе оба будут иметь расширение all.deb. Или их нужно переименовывать, чтобы учесть архитектуру?

Alien – использование любых программных пакетов

Иногда, программы или приложения, которые вы хотите установить, невозможно найти в необходимой версии.

Alien – это программа, которая может преобразовать один тип файла в другой.

Она может выручить вас из затруднительного положения, когда вы не можете найти нужный дистрибутив, и это также необходимо для программ, которые вы реально хотели бы сохранить для дальнейшей установки программ, без которых они не работают.

Она может работать вместе с Debian, Slackware и RPM в качестве входных и конечно же выходных данных.

Удивительно, как много вещей, вы, как правило, встречаете в работе в едином формате. Драйверы принтера являются примером программного обеспечения, которое часто выкладывают без исходного кода. Иногда разработчики специального программного обеспечения только создают программы для собственной системы и не готовы подстроить их для других систем.

Если вы хотите получить полноценный исходный код, и компилируете его, вы могли бы для этого лучше установить его с помощью диспетчера пакетов, используя Checkinstall (см. краткое руководство), чем Alien.

Во-первых, предупреждаем, Alien не гарантирует сопряжение со всем, что вы открываете. Alien почти последняя надежда, а не предпочтительная в процедуре установки. Иногда существует значительная разница между различными форматами пакетов и организацией распределения исходных и целевых задач.

Это означает, что он не будет работать должным образом. Когда вы используете Alien, вы, как правило, отправляетесь в неизведанные воды, а сайт Alien советует не использовать Alien для установки компонентов на системном уровне.

Alien является хранилищем пакетов большинства дистрибутивов и проста в установке и использовании. Формат команды:

Обратите внимание, что Alien нуждается в корневой привилегии для запуска. Наиболее важные параметры, для большинства пользователей, это -r, -d и -t for.rpm (Red Hat), .deb (Debian) и .tgz (Slackware) выходные форматы, соответственно.

Alien может сделать формат пакета входа своим собственным. Таким образом, чтобы взять .deb файл из wxCam и конвертировать его, используя RPM:

Затем можно применить стандартный установочный пакет и надеяться на лучшее.

Пакеты RPM созданы и скомпилированы для использования в дистрибутивах Linux на основе Fedora и Red Hat. RPM означает диспетчер пакетов RPM. Ubuntu и другие дистрибутивы Debian используют пакет .deb.

Иногда вы не можете найти желаемый пакет Debian для своего Ubuntu Linux, но он может быть доступен в скомпилированной версии RPM. В этом случае некоторые методы позволяют установить пакеты RPM в вашей системе Ubuntu Linux.

Пакет RPM в системе Ubuntu / Debian

Шаг 1. Установите пакет Alien в системе Debian

В Linux приложение Alien представляет собой конвертер пакетов дистрибутива для Debian Linux. Он может конвертировать пакеты RPM в формат Debian. Вы можете запустить следующую команду в терминальной оболочке Ubuntu с правами суперпользователя, чтобы установить пакет Alien в вашей системе Debian.


Шаг 2. Загрузите пакет RPM

Инструмент Alien позволит установить пакет RPM в вашей системе Ubuntu. Но вы не можете использовать команды YUM или DNF для установки пакетов RPM через репозиторий Red Hat; вам необходимо преобразовать пакет RPM в формат Debian.

Во-первых, вы должны загрузить желаемый RPM-пакет в свою систему. Давайте загрузим пакет RPM и преобразуем его в RPM. Здесь я загружу RPM-пакет Google Chrome, чтобы продемонстрировать процесс. Вы также можете выбрать другие пакеты RPM. Щелкните здесь, чтобы загрузить RPM-пакет Google Chrome.


Шаг 3. Установите RPM-пакеты в Debian Linux

Есть два метода установки пакета RPM в системе Ubuntu. Вы можете преобразовать пакет .rpm в пакет .deb или установить пакет RPM прямо в систему Debian с помощью инструмента Alien. Здесь мы рассмотрим оба способа установки пакета RPM в системе Debian Linux.

Метод 1: преобразование и установка пакета RPM в Ubuntu

После установки инструмента Alien в Debian Linux вы можете преобразовать пакет rpm, который вы скачали ранее. Вы можете выполнить приведенный ниже процесс, чтобы преобразовать пакет. Выполните следующую команду в оболочке терминала, чтобы преобразовать пакет RPM в формат Debian. Не забудьте заменить путь и имя пакета своими.


Хотя преобразование прошло успешно, теперь вы можете запустить команду dpkg или команду apt install в оболочке терминала, чтобы установить пакет RPM в Ubuntu Linux.

Команда Dpkg для установки пакета в Ubuntu.


Команда apt для установки пакета в Ubuntu.

Метод 2: установить пакет RPM непосредственно в Ubuntu

Это простой процесс установки пакета rpm на рабочий стол ubuntu. Сначала откройте каталог, в который вы загрузили пакет .rpm, затем выполните следующую команду Alien в оболочке терминала, чтобы установить пакет непосредственно в Ubuntu или других дистрибутивах Linux на основе Debian.


Выводы

Установка пакета RPM в системе Debian не является сложной задачей, но вы можете увидеть некоторые несоответствия в пакете. Иногда в пакете может не отображаться значок по умолчанию, или вы редко можете увидеть незначительную ошибку зависимости в своей системе. Однако во всем посте я описал, что такое пакет RPM и как его можно установить на рабочий стол Ubuntu и другие дистрибутивы Linux на основе Debian.

Читайте также: