Android deb или rpm

Что лучше deb или rpm

Установка программного обеспечения — очень важный момент в работе с операционной системой. Сейчас есть две самые распространенные системы установки программного обеспечения. Это используемая в Debian и всех ее производных, в том числе и в Ubuntu — deb, а также разработанная в RedHat и используемая в Red Hat и всех основанных на ней дистрибутивов — rpm.

Обе системы и deb и rpm полнофункциональные, легкие в использовании и имеют очень большое количество программного обеспечения. Многих пользователей интересует в чем разница между этими двумя системами. Но в интернете мы находим только общие сведения вроде того что уже выше написано. В этой статье мы попытаемся разобраться что лучше deb или rpm. Также попытаемся вникнуть в суть их различий.

Основы

С точки зрения пользователя, эти два варианта установки пакетов не имеют очень больших различий. Оба файла и Deb и Rpm — это всего лишь архивы, созданные с помощью утилиты ar. Эти архивы включают в себя файлы программ, исполняемые файлы, библиотеки, или файлы конфигурации. Кроме этого, в каждый пакет входят метаданные системы управления пакетами, именно этим и отличаются rpm и deb. Собственно файлы пакетов отличаются в основном только этим, но еще есть система управления пакетами. А там уже различий в базе данных намного больше.

Давайте рассмотрим каждую систему управления пакетами подробнее, а затем сравним что же в них особенного, и что лучше rpm или deb.

RPM (Red Hat Package Manager)

Как мы уже говорили, RPM — это менеджер пакетов, используемый в операционных системах, основанных на Red Hat, это вся ветка дистрибутивов: Fedora, OpenSUSE, Red Hat, CentOS и т д. Изначально этот пакетный менеджер был разработан в компании Red Hat еще в 1997 году и только для их дистрибутива, но затем он распространился и в другие операционные системы. Вместо обычного сжатия здесь используется сжатие gzip по алгоритму cpio и особый формат файла архива, его мы рассмотрим ниже. Здесь в сравнении rpm или deb, первый кажется лучше, но не все так просто, если в системе нет нужных утилит, то вы не сможете распаковать такой пакет. Кроме cpio могут использоваться и другие алгоритмы сжатия, например, lzma или xz. В последнее время все программное обеспечение подписывается ключами для удостоверения подлинности, вот и RPM поддерживает подпись с помощью GPG и MD5. Технология PatchRPMs или DeltaRPMs позволяет грамотно обновлять RPM пакеты без больших затрат трафика.

Хоть и сказано, что файл rpm — это обычный архив, это не совсем так. Вначале файла находится заголовок, который идентифицирует файл как rpm архив, затем идет подпись, для проверки целостности и подлинности файла. Дальше идет заголовок, в котором содержаться данные о самом пакете, версия, архитектура, список файлов и т д. И только после всего этого идет сам архив с файлами пакета.

Для работы с RPM могут использоваться несколько различных пакетных менеджеров, это универсальная утилита rpm, пакетный менеджер zypper в OpenSUSE, dnf в Fedora, urpmi в Mageia, yum — во многих дистрибутивах, основанных на Fedora.

Рассмотрим основные особенности RPM:

  • Автоматическое разрешение зависимостей в большинстве случаев корректно
  • Файл архива имеет специальный формат
  • Не поддерживается реализация зависимостей с выбором завистимости от пакет1 или пакет2.
  • Не поддерживаются рекомендованные пакеты
  • Позволяет настроить зависимость от файла, а не пакета
  • Все данные об установленных пакетах хранятся в базе данных поэтому при надобности можно проверить контрольные суммы
  • Поддерживаются сценарии как до, так и после установки программ
  • Поддерживается формат SRPM, который содержит в себе исходники программы все патчи с инструкции по сборке, позволяющие собрать программу из исходников на локальной машине.
  • Отличная поддержка Multilib пакетов
Читайте также:  Связь андроид с автомобилем

Deb (Debian Package Manager)

Файлы deb — это архивы, созданные с помощью утилиты ar. Они могут быть сжаты с помощью GZIP, Bzip2, lzma, или XZ. Чаще всего для управления пакетами deb в терминале используется утилита dpkg, Но могут и другие, например, gdebi, apt, aptitude и т д. Deb пакеты используются для установки программного обеспечения во многих операционных системах, основанных на Debian, это ветка Ubuntu со многими основанными на ней дистрибутивами и так далее. Поскольку Ubuntu в последнее время набирает популярность среди новичков, то пакетов для нее становится больше.

Из особенностей системы управления пакетами DEB можно назвать использование приоритетов для классификации пакетов по важности, а также поддержку рекомендованных пакетов. Это пакеты, которые не находятся в зависимостях программы, но желательны для установки вместе с ней. Рекомендованные утилиты устанавливаются автоматически в таком инструменте, как apt. Чтобы сравнить rpm vs deb рассмотрим особенности deb:

  • Файл пакета — обычный архив
  • Поддержка приоритетов для пакетов различной важности
  • Поддержка рекомендованных пакетов
  • Не поддерживаются файловые зависимости
  • Не поддерживается технология Delta для экономии трафика

Аналоги команд

Давайте рассмотрим аналоги команд для выполнения одних и тех же действий в этих системах управления пакетами с помощью утилит rpm и dpkg:

Источник

DEB против RPM

Содержание:

С точки зрения пользователя, в этих инструментах нет большой разницы. Форматы RPM и DEB — это просто архивные файлы, к которым прикреплены некоторые метаданные. Они оба в равной степени загадочны, имеют жестко запрограммированные пути установки и отличаются лишь тонкими деталями. DEB-файлы — это установочные файлы для дистрибутивов на основе Debian. RPM-файлы — это установочные файлы для дистрибутивов Red Hat. Ubuntu основана на управлении пакетами Debian на основе APT и DPKG. Red Hat, CentOS и Fedora основаны на старой системе управления пакетами Red Hat Linux, RPM.

Содержание: Разница между DEB и RPM

  • Что такое DEB?
  • Что такое RPM?
  • Ключевые отличия
  • Видео Объяснение

Что такое DEB?

DEB — это расширение формата пакета программного обеспечения Debian и наиболее часто используемое имя для таких бинарных пакетов. DEB был разработан Bedian

Что такое RPM?

Это система управления пакетами. Название RPM по-разному относится к формату файла .rpm, файлам в этом формате, программному обеспечению, упакованному в такие файлы, и к самому менеджеру пакетов. RPM был предназначен в первую очередь для дистрибутивов Linux; формат файла — это базовый формат пакета Стандартной базы Linux. RPM был разработан Community & Red Hat.

Источник

Что такое .deb и .rpm и чем они отличаются от .msi? [закрыто]

Что это за форматы файлов и чем они отличаются от .msi формата в Windows? И каковы плюсы и минусы этих схем управления пакетами?

Файлы, такие как .deb и .rpm более сродни .zip файлу. Это дерево каталогов файлов и подкаталогов, которые содержат файлы, относящиеся к конкретному приложению и / или библиотеке файлов.

дистрибутивы

Эти .deb файлы предназначены для распределения Linux , которые вытекают из Debian (Ubuntu, Linux Mint и т.д.). Эти .rpm файлы используются в первую очередь распределениями , которые вытекают из дистрибутивов Redhat основы (Fedora, CentOS, RHEL), а также в дистрибутиве OpenSUSE.

Что в них особенного?

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

  • создание учетных записей пользователей в системе
  • создание / изменение файлов конфигурации, которые на самом деле не содержатся в файле .deb или .rpm
  • установить права собственности на файлы после установки
  • запускать команды от имени root в системе, которая устанавливает пакет
  • зависимости, оба формата могут включать имена или пакеты и / или имена служб, которые они должны присутствовать в системе перед установкой.

Как насчет файлов .msi?

.msi файлы похожи на .deb & .rpm файлы, но, вероятно, еще более сложные. Эти .msi файлы используются установщиком Windows и предлагают дополнительные функции, такие как:

  • GUI Framework
  • генерация последовательностей удаления
  • Фреймворк внутри себя — для использования сторонними установщиками
  • Rollbacks
  • Рекламное объявление
  • Пользовательский интерфейс
  • и т.п.
Читайте также:  Мобильные модемы для андроида

Я бы посоветовал взглянуть на различные страницы Википедии на эти темы, если вы хотите получить более подробное объяснение.

Ссылки

Другие ответы касаются качеств .deb и .rpm сходных с ними .msi . Все они содержат программное обеспечение в сжатом формате, которое может делать некоторые дополнительные вещи. Эти дополнительные вещи, которые уже упоминались, включали добавление пользователей, задачи до и после установки, регистрацию программы в системе (например, реестр Windows, xdg-dirs, OpenRC / systemd init и т. Д.).

Что отличает форматы (и это огромный профессионал), это зависимости. И файлы, .deb и .rpm файлы могут и делать список имен и версий других программ, которые должны быть установлены в качестве обязательного программного обеспечения. Сами по себе это просто информационные, но .

Вы , как правило , непосредственно не взаимодействуют с .deb и .rpm файлы , как вы делаете с .msi файлами. На самом деле, как упоминалось ранее, a, .deb как правило, представляет собой просто архив (ar или tar), сжатый с помощью xz с содержащимися файлами в определенной структуре каталогов. Вместо этого вы используете такие инструменты, как dpkg и rpm для управления этими файлами.

dpkg и rpm установит содержимое .deb и .rpm файлы и проверит, установлено ли все необходимое программное обеспечение. Запуск этих программ аналогичен нажатию на .msi файл. Пользователи, однако, обычно не взаимодействуют с dpkg или rpm вместо этого используют apt-get и yum для установки пакетов. Эти инструменты не имеют точных аналогов на окнах.

Оба apt-get и yum имеют возможность получить файлы с удаленных (или локальных) хранилищ и использовать информацию о зависимостях , хранящуюся в .deb и .rpm файлы для загрузки и установки каких — либо предпосылок не встречались. С этими инструментами мне не нужно знать или беспокоиться о том, какое другое программное обеспечение мне нужно, я могу просто указать apt-get install chromium и знать, что apt-get будет гарантировать, что у меня установлены gtk +, alsa, некоторые библиотеки X и т. Д., Без необходимости вручную находить и устанавливать их .deb и .rpm файлы.

apt-get и yum является большими два менеджером пакетов, вы также найдете emerge и pacman там, которые делают ту же работу , хотя и с различными основными механизмами.

Источник

Почему RPM лучше, чем DEB для MeeGo?

Я знаю, что на различных форумах и группах новостей было много пух об этой теме, касающейся слияния Moblin и Maemo. Я хотел бы знать, что думают об этом ребята из stackoverflow. Каковы преимущества упаковки RPM над DEB, которые делают его лучшим выбором для MeeGo?

5 ответов

RPM указывается в качестве формата упаковки для Стандартная База Linux.

Хорошо, я признаю это, это растягивается для ответа, даже для меня. Нет большой разницы в базовом назначении пакетов RPM и DEB; у каждого из них есть свои собственные возможности, но в конце концов они оба являются мешком файлов и метаданных.

есть несколько важных различий между этими двумя форматами пакетов и они выходят за рамки чисто технические различия.

во-первых, APT (Advanced Packaging System), которая создает и использует debs, является полной упаковочной системой, которая традиционно имеет лучшую поддержку для отслеживания зависимостей. Это важно, потому что при установке пакета часто приходится устанавливать кучу других пакетов, на которые опирается ваш пакет. Если вы этого не сделаете, часто ваш пакет будет не бежать. Этот тип разрешения зависимостей является одной из сильных сторон формата упаковки деб. rpm имеет плохую поддержку для этого, и, как следствие, другие инструменты (yum, zypper) выросли, чтобы попытаться воспроизвести сложное разрешение зависимостей, которое делает APT.

во-вторых, Debian является своего рода» эталонной » платформой. Он называет себя» универсальной операционной системой » в основном шутливо, но в этом есть доля правды. Социальный контракт Debian и поддержка свободного программного обеспечения означает, что она не контролируется ни одной организацией или корпорацией. Это означает, что реализация открыта для постоянного совершенствования и проще интегрировать программное обеспечение. Следствием этого является то, что у вас есть ОС, которая работает на 8 чиповых архитектурах официально, а некоторые другие неофициально, поэтому пакет deb будет установлен на множество различных типов оборудования, на которых rpm даже не будет работать. Debian является эталонной платформой для таких вещей, как язык программирования perl и статистическое Программирование R язык, это означает, что ваш deb, вероятно, сможет иметь зависимости, которые он должен быть легко интегрирован в вашу систему. Debian также имеет много экспертов по предмету, которые привлекаются к нему, потому что они могут работать в соответствии со своими интересами и способностями и не вынуждены рассматривать отчеты о прибылях и убытках.

Читайте также:  Windows 10 mobile для андроида

Это означает, что deb часто не только превосходит технически из-за своей спецификации пакета, но и из-за экосистемы разработчиков подключается.

Я не знаю Moblin и Maemo, но я сделал много пакетов программного обеспечения. Я бы предпочел выбор rpm над deb в качестве формата файла, который я бы выбрал для любой операционной системы, где я мог бы выбрать. До apt существовал для rpm, я очень предпочитал debian производным системам redhat. ням почти так же хорошо, как apt. Поскольку я узнал обе упаковочные системы, я бы предпочел доставить об / мин чем деб.

сравнение об / мин и деб:

(1) для Двоичные Данные, об / мин использует cpio, деб использует ar. cpio — это больше Кросс Выбор платформы выбрана по умолчанию архиватор с POSIX. ar традиционный архиватором.

(2) для Исходные Данные, srpm (специальный тип rpm) использует cpio С помощью одного специального файла, который автоматизирует процесс построения об / мин, и генерируется при любом об / мин, построен правильно из источника. деб С другой стороны, использует множество систем сжатия, поскольку поддерживается исходный формат ввода поставщиков источника, необязательно также ряд файлов исправлений и 3 волшебных файла каждый с другим форматом файла.

(3) приведение в рабочее состояние об / мин пакеты значительно проще в моем опыте, чем сделать деб файлы.

(4) создание функциональной chroot на об / мин систем на основе стандарта об / мин команды, в то время как в деб based systems это специализированный скрипт под названием debootstrap.

только apt из лагеря debian кажется более удобным, чем ням из лагеря redhat, все выше по течению инструменты QA кажутся лучше из лагеря Redhat.

Я предлагаю сделать об / мин — это не волшебное искусство, просто некоторые вещи вы должны обучать людей.

сравнение об / мин и деб инструменты QA:

(1) строители репозитория: createrepo — это инструмент, простой в использовании и понимании. мини-dinstall на, dpkg-scanpackages или dak (архивный комплект Debian) или мини-дак или reprepro или debarchiver или debpool или DebMarshal или apt-ftparchive или dpkg-scansources либо сложны, либо плохо документированы, либо отсутствует критическая функция, а иногда и все три.

(2)» исходный deb » не являются одним файлом, как srpm — это один файл, и поэтому для их перемещения требуются специальные инструменты.

(3) Сборка серверов: Кодзи ударов помощью pbuilder каждый день недели в документации. Надо сказать, что помощью pbuilder тихий, холодный.

Я поражен, что нет четкого лучшего инструмента для создания деб существует РЕПО на основе. Те, кого я пробовал, бедны. Ни один из них, которые я пробовал, не так хорош, как createrepo для rpm. (reprepro почти так же хорошо, как createrepo от rpm за исключением того, что он не позволит нескольким версиям один и тот же пакет в одном репозитории, что исключает его для большинства систем непрерывного развертывания.

вывод : сравнение об / мин и деб

Я думаю, выбирая об / мин цепи инструмента лучше, с их стороны. так же, как интересная ссылка на Чарльз Стюарт заявил свои инструменты, которые имеют значение.

решение отказаться от DEB для RPM для Meego и других подобных было чисто политическим и деловым. Технические заключения были проигнорированы. Ваш вопрос (как вопрос) действителен в общем контексте, но в случае Meego он выглядит как попытка оправдать уже сделанный шаг впоследствии. Тем не менее, мы никогда не узнаем технических достоинств pro и contra — Meego теперь пошли по-другому, где конкуренция deb-vs-rpm исключена.

на данный момент, я думаю, это, вероятно, должен быть вопрос Linux & Unix.

Источник

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