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

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

Alien should not be used to replace important system packages, like init, libc, or other things that are essential for the functioning of your system. Many of these packages are set up differently by the different distributions, and packages from the different distributions cannot be used interchangeably. In general, if you can’t remove a package without breaking your system, don’t try to replace it with an alien version.

PACKAGE FORMAT NOTES


OPTIONS

.spec» if you were creating a Red Hat package.
-s , —single Like -g , but do not generate the packagename.orig directory. This is only useful when you are very low on disk space and are generating a debian package.
—patch= patch Specify the patch to be used instead of automatically looking the patch up in /var/lib/alien . This has no effect unless a debian package is being built.
—nopatch Do not use any patch files.
—description= desc Specifiy a description for the package. This only has an effect when converting from the tgz package format, which lacks descriptions.
-c , —scripts Try to convert the scripts that are meant to be run when the package is installed and removed. Use this with caution, becuase these scripts might be designed to work on a system unlike your own, and could cause problems. It is recommended that you examine the scripts by hand and check to see what they do before using this option.
-k , —keep-version By default, alien adds one to the minor version number of each package it converts. If this option is given, alien will not do this.
-h , —help Display a short usage summary.

EXAMPLES


ENVIRONMENT


NOTES

If alien is not run as root, the files in the generated package will have incorrect owners and permissions.

AUTHOR

deb to rpm conversion code was taken from the Martian program by Randolph Chung, >.

Alien has been extensively rewritten (3 times) and is now maintained by Joey Hess, >.

Источник

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

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

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

Читайте также:  Почему при установке windows не видит драйвера

Утилита эта была написана в незапамятные времена и специально предназначена для конвертации бинарных пакетов, собранных для разных дистрибутивов, из одного формата в другой. Поддерживаемые форматы — deb , rpm , tgz из Slackware (и абстрактный tar.gz — тоже), slp из Stampede (был некогда такой дистрибутив Linux’а, в своё время — самый фронтирный) и pkg из Solaris.

Утилита alien входит в последнюю сборку Cintu — cintu-maxi-16041-7ts . В сборке cintu-midi-16041-3ts (как и во всех остальных Ubuntu’идах) её легко установить из официального репозитория:

Целевым форматом по умолчанию в alien выступает deb, прочие задаются соответствующими опциями, на которых я останавливаться не буду (заинтересованным предлагаю обратиться к тёте Мане — man alien ). Конвертация в deb-пакет из любого другого формата требует прав администратора (на причинах этого здесь останавливаться не буду). Однако пользоваться на предмет их обретения командой sudo здесь не желательно (хотя и не запрещается): после этого сгенерённый файл *.deb будет принадлежать root ‘у, со всеми вытекающими из этого неудобствами.

Так что проще воспользоваться утилитой 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-пакета на выходе. Да, это не эстетично идеологично, зато «дёшево, надёжно и практично».

Читайте также:  Как удалить уже установленный windows

И в заключение — очень важное замечание: применять утилиту 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 конструирует имя из исходного пакета по своим правилам, поэтому я переименовывал для единообразия — с префиксом fonts для шрифтовых файлов, с указанием архитектуры — как для скомпилированных бинарников. Более-менее стараясь придерживаться стандартной номенклатуры Ubuntu.

Оставьте комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

Источник

How install RPM packages on Ubuntu using Alien

Overview

In this tutorial, you will learn how to install RPM packages on Ubuntu using a package named alien.

Ubuntu is a Debian based Linux distribution, and as such it uses deb packages for installing software. However, not all not all software is packaged in the deb format. Some software maintainers only provide an RPM package, which is a format used exclusively with Red Hat and CentOS based distributions.

Thankfully, a Debian package named Alien allows us to natively install RPM packages on Ubuntu. The package is available for Ubuntu 16.04, Ubuntu 18.04, Ubuntu 19.10, and Ubuntu 20.04.

Installing Alien

As Alien is available from Ubuntu’s package repository, it is very simple to install. To install it, use the following command.

Converting RPM to Deb

For an RPM to be installed on Ubuntu it must be converted to a Deb package, which is what Alien does for us. We simply point Alien at our RPM file and it will do the hardwork.

Alien will output a new deb file from the RPM, which will need to be installed using native Ubuntu or Debian tools.

Installing a Deb Package on Ubuntu

Once the RPM file has been converted to a Deb package, we can install it using native tools. For installing deb packages, you use the dpkg command.

Install RPM packages on Ubuntu with Alien

The examples above required two steps before an RPM could be installed. You first needed to convert the package into Ubuntu’s native package format, and then install it using the dpkg command.

However, Alien can convert and install all in one step. To do so you use the -i flag.

Conclusion

Alien is handy utility for converting between different package formats. In this tutorial, you learned how to convert an RPM into a Deb file and install it. You also learned how to install an RPM file directly, without having to convert it first.

Читайте также:  Find font files in windows

While we only covered RPM to Deb conversion in this tutorial, alien is capable of doing more. It also able to perform the inverse, where we convert a Deb file into an RPM file.

Источник

Alien / Package Converter

Утилита преобразования пакетов для различных дистрибутивов Linux.

Иногда начинающие пользователи могут столкнутся с проблемой отсутствия пакета какого либо приложения для используемой версии своего дистрибутива Linux. Но есть пакет предназначенный для другого дистрибутива. Неопытному пользователю будет довольно сложно установить приложение из исходников, или собрать нужный пакет самому. Но из этой ситуации есть выход! Решить проблему поможет утилита alien.

alien очень полезная утилита созданная для преобразования форматов различных систем управления пакетами Linux . Поддерживается преобразование между пакетами: Linux Standard Base (.lsb), Redhat (.rpm), Debian (.deb), Stampede (.slp), Solaris (.pkg) и Slackware (.tgz).

Некоторые опции alien:

Это позволит сконвертировать paket.deb в paket.rpm с преобразованием стандартных для Debian пакета инсталляционных скриптов — preinst, postinst, prerm и postrm. На выходе получится RPM-пакет.

Пример конвертирования paket.rpm в paket.deb (пакет находится в домашнем каталоге) :

Опция –to-deb не указывается потому что она используется приложением по умолчанию, ключ -v – отображать каждую команду (если добавить -i то пакет сразу устанавливается) .

Package Converter это удобная QT графическая оболочка (GUI) дающая простой способ использования некоторых базовых возможностей консольной утилиты Alien . В одном окне указывается путь к пакету, каталог назначения, нужный формат пакета на выходе и по желанию можно включить некоторые опции из состава Alien . Нажав значок конвентировать (шестерёнка с зелёной стрелкой), в нижней части окна можно увидеть степень выполнения процесса и информацию о завершении.

Package Converter , как и Alien , имеет возможность автоматически устанавливать конвертированный пакет, а при преобразовании делается попытка конвертации и инсталяционных скриптов, включенных в архив (пакет) . Но функцией конвертации инсталяционных скриптов следует пользоваться крайне осторожно! Многие Linux дистрибутивы могут сильно отличаться друг от друга и неправильно преобразованные скрипты могут легко повредить операционную систему.

Как alien так и Package Converter хорошо справляются с преобразованием пакетов небольших приложений. Но не стоит преобразовывать ими крупные программы, такие как OpenOffice или VMware. Лучше всё же постараться найти пакет для своей версии Linux или научится ставить программы из исходников (что кстати совсем не сложно: ./configure && make && make install) .

Лицензия: GNU General Public License v3

Источник

Как конвертировать пакеты в Ubuntu, используя Alien

wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали авторы-волонтеры.

Количество просмотров этой статьи: 8811.

Вы можете установить в Ubuntu пакеты, предназначенные для других linux-систем, используя программу Alien. Эта программа конвертирует пакеты rpm, dpkg или TGZ. Используя Alien, вы можете преобразовать пакет в удобный вам формат и установить его.

/Desktop (нажмите Enter).

  • Эта команда изменит рабочую папку на папку рабочего стола, где находится .rpm файл.

Источник

Оцените статью