В чем разница между пакетами deb и tar-шарами? Каковы преимущества / недостатки каждого?

Я не знаю о смоляных шариках. Большинство пакетов доступны в виде tar ball, но пакеты Ubuntu являются пакетами Debian.

В чем разница между пакетами deb и tar-шарами?

Каковы преимущества / недостатки каждого?

9
задан 22 May 2012 в 19:55

4 ответа

шары tar являются просто другой формой сжатия как zip. Хотя форматы и методы сжатия отличаются, это - в основном контейнер для группы файлов и папок.

Обычно, исходный код и файлы, необходимые ему, будут сделаны доступными в Интернете человеком/группой, который записал программное обеспечение в форме шара tar. Таким образом, можно загрузить его, untar он, скомпилируйте программное обеспечение и установите его.

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

enter image description here

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

Что касается преимуществ и недостатков, .deb пакеты управляются диспетчерами пакетов, такими как Кв. и способность. Таким образом каждый раз, когда Вы устанавливаете программное обеспечение с ним, они автоматически выяснят, есть ли у Вас зависимости, которые требуются запустить то программное обеспечение в Вашей системе и установят их для Вас.

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

Но склонный делает все это для Вас.

Кроме того, установка из источника (устанавливающий от шаров tar) будет иметь различные методы для другого программного обеспечения. Существует философия GNU установки configure-make-make и существуют другие методы в зависимости от того, как программное обеспечение записано.

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

Еще одна точка. Когда необходимо установить из источника? Это от шара tar? Существует в основном две ситуации.

  1. Если debian упаковочная команда еще не упаковал программное обеспечение.
  2. Если Вы хотите способствовать проекту. Это означает, что можно внести изменения в исходный код, скомпилировать его и протестировать изменения.

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

Надеюсь, это поможет.

6
ответ дан 22 May 2012 в 19:55

Я вижу некоторые довольно хорошие ответы, уже опубликованные. Но есть несколько вещей, которые необходимо решить.

Вопреки так называемому «аду зависимостей», когда дело доходит до компиляции из исходного кода, вы можете на самом деле настроить Ubuntu таким образом, чтобы он автоматически устанавливал эти зависимости при компиляции из tarball / любого другого источника.

Прочтите, как это сделать, здесь:

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

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

Кроме того, слово «пакеты Debian» может сбить вас с толку в этом контексте. Помните, что пакеты Debian бывают двух типов, как здесь сказано:

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

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

0
ответ дан 22 May 2012 в 19:55

Пакеты 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, чтобы установить приложение на его " default "locatioon (обычно в / usr / {s} bin или / usr / local / {s} bin, но зависит от приложения и дистрибутива)

Основные преимущества Debian / Ubuntu Пакеты по отношению к архивам исходного кода заключаются в том, что пакеты являются «автономными» и их двоичные файлы отслеживаются. Это означает, что процесс распаковки прозрачен для пользователя, который просто видит (примерно) один пакет на приложение. Пользователю даже не нужно помнить, какие файлы установлены и где установлено данное приложение, поэтому установка / удаление приложений становится (в основном) процессом одной инструкции.

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

0
ответ дан 22 May 2012 в 19:55

Тар шарики, как правило, исходный код, который вы должны скомпилировать. Дебы - это предварительно скомпилированные программы, уже собранные и настроенные для Ubuntu / Debian.

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

Дебс также установит все необходимые зависимости. Установка из исходного кода может привести к тому, что ласково называют «адом зависимостей». Большинство программ с открытым исходным кодом зависят от нескольких других программ / библиотек. При установке из исходного кода он не будет устанавливать их, а вместо этого будет (надеюсь) жаловаться на то, что зависимость не встречается. Затем вы пытаетесь установить эту зависимость, а затем она взрывается, требуя другой зависимости и т. Д. И т. Д.

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

Когда мне нужно установить программу, я пробую свои параметры в следующем порядке:

  1. Посмотрите в Центре программного обеспечения. Это, очевидно, самое простое, хотя Центр программного обеспечения не является всеобъемлющим и не соответствует последним версиям.

  2. Попробуйте найти хранилище, которое его предоставляет. Добавление репозитория приведет к тому, что программа появится в Центре программного обеспечения, получит своевременные обновления и т. Д.

  3. Найдите пакет .deb.

  4. Установка из источника (тарный шарик).

0
ответ дан 22 May 2012 в 19:55

Другие вопросы по тегам:

Похожие вопросы: