Як встановити пакет Debian на будь-який дистрибутив Linux

Пакунки Debian є найвідомішими пакетами у всьому Linux. У 9 випадках з 10, коли хтось переносить програму на Linux, він видає як пакет Debian, тобто файл DEB. Підтримка Linux, навіть якщо це лише один тип дистрибутива Linux, добре. Тим не менш, не кожен дистрибутив Linux призначений для запуску цих пакетів. У цій статті ми розглянемо надійний спосіб встановлення пакунка Debian і змусити програму працювати у вашому дистрибутиві Linux.

У цьому посібнику «перетворення» не відбуватиметься. Замість цього просто витягуйте дані та переміщуйте їх. Щоб почати, завантажте пакет Debian. У цьому прикладі ми будемо працювати з пакетом Google Chrome. Хоча цей посібник зосереджено на пакеті Google Chrome Debian, він є доказом концепції. Скористайтеся методом, показаним тут, і застосуйте його для встановлення пакунка Debian.

Вилучення даних

Більшість користувачів Linux не усвідомлюють, що пакети DEB — це просто вигадливі архівні файли, які можна розпакувати. Завантажте пакет Debian, який ви хочете інсталювати, і розпакуйте його. У цьому випадку ми маємо пакет Chrome, завантажений та розпакований у нашій системі. Відкрийте вікно терміналу та скористайтеся командою mkdir, щоб створити нову папку. У цій папці будуть зберігатися всі дані пакета, які нам потрібні.

mkdir -p ~/deb-extracted

За допомогою mv помістіть файл Chrome у нову папку.

mv google-chrome-stable_current_amd64.deb ~/deb-extracted

CD у нову папку та скористайтеся інструментом ar, щоб перевірити пакет Chrome.

cd ~/deb-extracted

ar tv google-chrome-stable_current_amd64.deb

Ar перевіряє файл Chrome DEB і повідомляє нам, що всередині є три стислі файли. Це файли «debian-binary», «control.tar.gz» та «data.tar.xz». Усі необхідні дані є в архіві data.tar.xz, але «control.tar.gz» також важливий.

Інструмент Ar не лише перевіряє архіви. Він також може їх витягувати. Використовуйте ar xv, щоб витягти три елементи з google-chrome-stable_current_amd64.deb.

ar xv google-chrome-stable_current_amd64.deb

Усі три елементи тепер мають бути всередині ~/deb-extracted. Використовуйте команду rm, щоб видалити «debian-binary». Це не обов’язково, оскільки ми не використовуємо Debian Linux.

Звідси нам потрібно буде витягти дані файлу з data.tar.xz. Він містить усе необхідне для запуску Chrome як програми в Linux. Розпакуйте його в папку за допомогою tar.

tar -xvf data.tar.xz

Розпакування архіву даних виведе 3 папки. Папки «opt», «usr» та «etc».

Використовуючи rm -rf, видаліть папку etc. Елементи в цій папці не потрібні, оскільки це завдання оновлення Debian для перевірки наявності оновлень.

Примітка. Не ставте / перед командою нижче. Ви можете випадково видалити /etc/, а не папку etc, витягнуту в ~/deb-extracted.

rm -rf etc

Потім перемістіть файли всередину usr і виберіть файли туди, де вони належать на ПК. Наприклад, щоб інсталювати Google Chrome у дистрибутиві Linux, відмінному від Debian, ви повинні перемістити файли туди, де вони належать, вручну:

cd opt

sudo -s

mv google /opt/

ln -snf /opt/google/google-chrome /usr/bin/

cd .. share

mv -f * /usr/share/

Наведений вище приклад показує, що саме робити з витягнутими файлами з data.tar.xz. Очевидно, що інші пакунки Debian можуть мати вміст всередині витягнутої папки, який відрізняється від того, який ви бачите в цьому посібнику. Ідея полягає в тому, щоб подивитися на назви папок всередині архіву data.tar.xz і звернути увагу на імена. Папки всередині мають ті самі імена, що й папки у файловій системі вашого ПК Linux, і елементи всередині переходять до цих місць.

Інструкції з пошуку пакету

Іноді декомпіляції пакунка Debian та розпакування архіву data.tar.xz недостатньо, і ви все ще залишаєтеся заплутаними. На щастя, кожен файл пакету Debian містить набір інструкцій. Ці інструкції знаходяться всередині control.tar.gz.

Розпакуйте архів control.tar.gz до папки ~/deb-extracted за допомогою команди tar.

tar -xvzf control.tar.gz

Архів control.tar.gz містить багато скриптів, які вказують пакету Debian, що робити. Той, який нас цікавить, позначений як «postinst». Postinst — це скорочення від «postinstallation», сценарій bash, який запускається і розміщує все, куди потрібно.

У терміналі скористайтеся командою cat, щоб переглянути текстовий файл. Об’єднайте його з «більше», щоб переглянути його рядок за рядком. Перевірте файл “postinst” і зверніть увагу на те, що робить скрипт, особливо куди він розміщує файли. Це допоможе вам зрозуміти, де належать елементи в data.tar.xz і що вони роблять.

cat postinst | more

Залежності

Декомпіляції пакунка Debian та переміщення файлів даних у потрібні місця часто недостатньо. Іноді вам знадобиться встановити правильні файли залежностей, або нічого не працює. На щастя, кожен пакунок Debian має невеликий файл у control.tar.gz, у якому викладено детальний список важливих файлів бібліотеки, які користувач повинен встановити, щоб усе працювало. Щоб переглянути цей файл, використовуйте cat.

cat control | more

Наприклад, для використання Google Chrome керуючий файл запитує ca-certificates, fonts-liberation, libappindicator1, libasound2, libatk-bridge2.0-0 та інші елементи.

Уважно прочитайте цей файл і використовуйте його для встановлення окремих бібліотек на вашому ПК з Linux. Якщо на вашому комп’ютері є правильні програми, вилучена програма повинна працювати як зазвичай.

Якщо ви використовуєте систему Linux на основі Redhat, дотримуйтесь нашого посібника, щоб встановити на неї пакунок Debian.