Як перетворити програми Debian на Redhat на Linux

Конвертація пакетів Debian в Red Hat Linux: Повний посібник

У світі бінарних пакетів Debian займає лідируючі позиції. Формат файлів DEB користується особливою популярністю серед розробників. Як наслідок, Linux-системи, що базуються на Debian, зазвичай отримують нові програми та оновлення першими. Такі популярні програми, як Steam, Spotify, Google Chrome, Skype, та багато інших, спочатку випускаються для Debian. Хоча системи Linux, що базуються на Red Hat, також привертають увагу розробників, вони все ж поступаються Debian у цьому плані. Саме тому багато користувачів шукають способи декомпіляції та зворотного інжинірингу програм Debian для використання їх в інших дистрибутивах. Існує декілька підходів до вирішення цієї задачі, але одним з найефективніших є використання конвертера пакетів Alien.

Необхідні передумови

Alien – це утиліта, написана на мові програмування Perl. Для її коректної роботи на вашому комп’ютері необхідно спочатку встановити деякі пакети Perl. В деяких дистрибутивах Linux Perl вже може бути встановлений. У цій інструкції ми зосередимось на конвертації пакетів Debian у формат Red Hat. Тому ми розглянемо, як встановити Perl на Fedora та openSUSE.

Щоб перевірити, чи встановлені необхідні інструменти Perl, відкрийте термінал та введіть наступну команду:

perl --help

Якщо Perl встановлено, у терміналі з’явиться довідка з описом можливостей та команд мови. Якщо після введення команди нічого не відбувається, це означає, що Perl не встановлено.

Встановлення Perl на Fedora

sudo dnf install perl-core

Встановлення Perl на openSUSE

Perl доступний в OBS. Перейдіть за цим посиланням та натисніть кнопку “Пряма установка”, щоб розпочати процес інсталяції.

Встановлення Alien

Процес встановлення цієї програми складається з декількох простих кроків. Для початку, завантажте вихідний код з офіційної сторінки Source Forge. Далі відкрийте термінал та виконайте наступні дії:

Перейдіть до каталогу завантажень, де знаходиться вихідний код Alien.

cd ~/Downloads

Розпакуйте архів, використовуючи команду tar.

tar xvfJ alien_8.95.tar.xz

Перейдіть у каталог з кодом.

cd alien_8.95

Створіть файл MakeFile, використовуючи Perl. Цей файл потрібен для того, щоб система знала, як скомпілювати програмне забезпечення.

perl Makefile.PL

Використайте щойно створений файл для компіляції програми.

make

Alien успішно скомпілювано. Тепер необхідно перемістити програмне забезпечення з каталогу вихідного коду у відповідне системне місце. Це робиться за допомогою команди “make install”. Ця команда, на відміну від попередніх, має виконуватися з правами адміністратора (sudo), оскільки програмне забезпечення буде розміщено у важливих системних каталогах.

sudo make install

Після завершення процесу встановлення ви можете запустити Alien з терміналу, ввівши команду:

alien

Конвертація пакетів Debian в Red Hat

Щоб конвертувати пакет з формату Debian (DEB) в формат Red Hat (RPM), спочатку завантажте необхідний DEB-пакет. Оскільки DEB є найпоширенішим форматом бінарних пакетів для Linux, знайти потрібні файли не складно. Якщо ви не знаєте, як це зробити, перегляньте нашу статтю про те, як знаходити відсутні програми в Ubuntu.

Після завантаження DEB-файлу відкрийте термінал та перейдіть до каталогу завантажень.

cd ~/Downloads

Для конвертації DEB-файлу в RPM використайте команду з параметром -r.

sudo alien -r *.deb

Ця команда зазвичай успішно створює RPM-пакет. Однак, варто зазначити, що не всі пакети Debian можна конвертувати. Деякі з них можуть містити специфічні файли, що ускладнюють процес конвертації.

Додаткові можливості Alien

Конвертер пакетів Alien вміє не тільки конвертувати Debian в RPM. Ось деякі інші корисні функції:

Конвертація RPM в DEB

За допомогою параметра -d можна конвертувати RPM-пакети у формат Debian.

sudo alien -d file.rpm

Конвертація в пакет Slackware

За допомогою параметра -t можна конвертувати будь-який пакет у формат Slackware Linux.

sudo alien -t file

Конвертація в пакет Solaris

Легко конвертуйте будь-який формат пакету в формат Solaris, використовуючи параметр -p.

sudo alien -p file

Виправлення дозволів

Під час конвертації між різними форматами пакетів іноді можуть виникати проблеми з правами доступу до файлів. Alien має функцію для виправлення цих проблем. Використовуйте параметр –fixperms для корекції прав.

sudo alien file --fixperms

Тестування згенерованих пакетів

Перед встановленням ви можете протестувати новостворений пакет за допомогою Alien. Використовуйте параметр –test для перевірки.

sudo alien file --test