Яка різниця між деб-пакетами та кульками дьогтю? Які переваги / недоліки кожного?


9

Я не знаю про кульки дьогтю. Більшість пакетів доступні у формах з дьогтем, але пакети Ubuntu - це пакети Debian.

Яка різниця між деб-пакетами та кульками дьогтю?

Які переваги / недоліки кожного?

Відповіді:


7

Кульки з дьогтем - це зазвичай вихідний код, який потрібно скласти. Деби - це попередньо складені програми, вже побудовані та налаштовані для Ubuntu / Debian.

Я настійно рекомендую використовувати debs, коли вони доступні, оскільки вони простіші, і вони інтегруються з менеджером пакунків, так що ви можете легко їх видалити.

Деби також встановлять необхідні залежності. Встановлення з джерела може призвести до того, що ласкаво називається "пекло залежності". Більшість програм з відкритим кодом залежить від декількох інших програм / бібліотек для функціонування. Встановлюючи з джерела, він не встановлюватиме їх, а натомість (сподіваємось) скаржиться, що залежність не виконана. Потім ви намагаєтесь встановити цю залежність, а потім вона вибухне, вимагаючи іншої залежності тощо, тощо.

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

Коли мені потрібно встановити програму, я спробую свої параметри в такому порядку:

  1. Загляньте в Центр програмного забезпечення. Це, очевидно, найпростіше, хоча Центр програмного забезпечення не є всеосяжним і не в курсі останніх версій.

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

  3. Шукайте пакет .deb.

  4. Встановити з джерела (куля дьогтю).


6

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

Зазвичай вихідний код та потрібні йому файли будуть доступні в Інтернеті особою / групою, яка написала програмне забезпечення у вигляді кульки дьогтю. Таким чином, ви можете завантажити його, зняти його, скласти програмне забезпечення та встановити його.

Однак те, що потрібно зробити, - це полегшити цей процес встановлення, підтримуючи стандарт. Програмне забезпечення, доступне в Інтернеті, забирають сервіси пакунків Debian, складаються у відповідні пакети .deb і передаються у сховище Debian.

введіть тут опис зображення

Ви можете прочитати про це з блогу сервісного пакета Debian тут: http://www.j4v4m4n.in/2012/05/01/debian-utsavam-at-mes-kuttippuram-kerala-2/

Що стосується переваг та недоліків, .deb-пакетами керують менеджери пакунків, такі як apt та здатність. Тож щоразу, коли ви встановлюєте програмне забезпечення разом із ним, вони автоматично з’ясують, чи є у вас залежності, необхідні для запуску цього програмного забезпечення у вашій системі, і встановлять їх для вас.

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

Але спритний все це робить для вас.

Крім того, установка з джерела (встановлення з кульок дьогтю) матиме різні методи для різних програм. Існує філософія GNU конфігурації-make-make установки та є інші методи залежно від того, як написано програмне забезпечення.

Однак перетворення їх у deb повністю усуває всі ці відмінності та полегшує користувачеві встановлення та використання програмного забезпечення.

Ще один момент. Коли вам потрібно встановити з джерела? Це з кульки дьогтю? В основному є дві ситуації.

  1. Якщо команда з упаковки debian ще не упакувала програмне забезпечення.
  2. Якщо ви хочете внести свій внесок у проект. Це означає, що ви можете внести зміни до вихідного коду, скласти його і протестувати зміни.

Якщо ви хочете дізнатися більше про упаковку debian, можете прочитати її тут: http://www.debian.org/doc/manuals/maint-guide/

Сподіваюсь, це допомагає.


1

Пакети Debian (і, отже, Ubuntu) - це колекція бінарних файлів та відповідних інструкцій щодо їх встановлення. Це означає, що сам пакет знає, як і де його встановити, а також знає список пакунків, від яких залежить.

Джерельні тарболи (файли з розширенням .tar.gzабо .tar.bz2- або навіть .tgz або .tbz2 ) - це просто набори файлів і каталогів, які упаковані разом з tarутилітою, а також стиснуті з будь-яким gzipабо bzip2. Для створення вихідного коду необхідно:

  1. розпакуйте файли за допомогою ( tar xvfz file.tar.gzабо tar xvfj file.tar.bz2в порожній папці)
  2. налаштуйте пакет за допомогою ./configure(пакет перевіряє систему, щоб побачити, чи все в порядку перед початком компіляції)
  3. почніть компіляцію з make
  4. якщо ви хочете, запустіть, make installщоб встановити додаток до його "за замовчуванням" місцеположення (як правило, у / usr / {s} бін або / usr / local / {s} бін, але це залежить від програми та від розповсюдження)

Основні переваги пакетів Debian / Ubuntu щодо вихідних тарболів полягають у тому, що пакети є "автономними" та відслідковуються їх бінарні файли. Це означає, що процес розпакування є прозорим для користувача, який просто бачить (приблизно) один пакет на додаток. Користувачеві навіть не потрібно пам’ятати, які файли даної програми встановлено та де, тому встановлення / видалення програм стає (здебільшого) одним процесом інструкцій.

Основні переваги вихідних тарболів щодо двійкових пакетів полягають у тому, що в першому випадку вихідний код складається безпосередньо на цільовій машині і може бути потім оптимізований відповідно. Більше того, навіть найкраща система пакетних пакетів може порушуватися в окремих випадках (наприклад, програмні пакети занадто нові або занадто старі), і зазвичай офіційні пакети очищаються серверами, коли вони стають занадто старими. У цих випадках доводиться вручну шукати в Інтернеті потрібний додаток та конкретні бібліотеки в конкретних версіях, щоб задовольнити всі його залежності.


1
Невеликий момент. Етапи "налаштування, виготовлення, встановлення" призначені для тих програмних програм, які використовують філософію побудови автоматичного збирання GNU. Є програмне забезпечення, яке можна побудувати з джерела (з кульок дьогтю) різними способами. Тому може бути невірним вислів "Щоб створити джерело, зробіть конфігурацію, створення, встановлення". Найкращим способом сказати це може бути: "Щоб встановити з джерела, прочитайте файл README або INSTALL у джерелі та виконайте вказані там дії. Посилайтеся
harisibrahimkv

Так, я просто говорив про подібний метод, тому що його прийняла переважна більшість вихідних тарболів.
Авіо

Ніяких дебатів там немає. :)
harisibrahimkv

1

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

На відміну від того, що відомо як "пекло залежності", коли мова йде про компіляцію з джерела, ви можете насправді налаштувати Ubuntu таким чином, що він автоматично встановлює ці залежності, коли ви збираєтеся з тарболу / будь-якого джерела.

Прочитайте, як це зробити тут:

http://www.howtogeek.com/106526/how-to-resolve-dependitions- while-compiling-software-on-ubuntu/

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

Також слово "пакети Debian" може збентежити вас у цьому контексті. Пам'ятайте, що пакети Debian бувають двох типів, як тут написано:

http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.en.html

Звичайно, якщо ви говорите лише про деб-файли, то вони, як правило, є таким складеним програмним забезпеченням, як уже сказані вище відповіді.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.