Что это за форматы файлов и чем они отличаются от .msi
формата в Windows? И каковы плюсы и минусы этих схем управления пакетами?
Что это за форматы файлов и чем они отличаются от .msi
формата в Windows? И каковы плюсы и минусы этих схем управления пакетами?
Ответы:
Файлы, такие как .deb
и .rpm
более сродни .zip
файлу. Это дерево каталогов файлов и подкаталогов, которые содержат файлы, относящиеся к конкретному приложению и / или библиотеке файлов.
Эти .deb
файлы предназначены для распределения Linux , которые вытекают из Debian (Ubuntu, Linux Mint и т.д.). Эти .rpm
файлы используются в первую очередь распределениями , которые вытекают из дистрибутивов Redhat основы (Fedora, CentOS, RHEL), а также в дистрибутиве OpenSUSE.
У этих файлов есть еще одна особенность, отличающая их от .zip
файлов: они могут включать спецификацию, содержащую правила, которые сообщают программному обеспечению менеджера пакетов, работающему в системе, которая устанавливает один из этих файлов, выполнять дополнительные задачи. Эти задачи будут включать такие вещи, как:
.deb
или.rpm
.msi
файлы похожи на .deb
& .rpm
файлы, но, вероятно, еще более сложные. Эти .msi
файлы используются установщиком Windows и предлагают дополнительные функции, такие как:
Я бы посоветовал взглянуть на различные страницы Википедии на эти темы, если вы хотите получить более подробное объяснение.
ar
архивами, а rpms - (возможно, частично) архивами cpio. В случае с debs легко убедиться, что deb можно распаковать ar -x
. В случае rpm я не знаю, возможно ли это.
rpm2cpio package.rpm | cpio -idv
Другие ответы касаются качеств .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
там, которые делают ту же работу , хотя и с различными основными механизмами.
.deb
s упакованы с помощью ar
утилиты. понятия не имею почему.
emerge
менеджером пакетов, возможно, вам следует также рассмотреть порты BSD (хотя я не знаю о них много, поэтому я не уверен, есть ли у них эквивалент менеджера пакетов в GNU / Linux).
emerge
и он очень похож на порты. Все это основано на исходном коде и очень настраиваемо, но если команда установит / удалит, обработает зависимости и сохранит базу данных установленных пакетов, я назову ее менеджером пакетов. Хорошие комментарии.
Он имеет те же функции, что и файл MSI под Windows:
Под Linux они также управляют зависимостями между другими пакетами.
Этот формат управления пакетами делает много других вещей, но это основные функциональные возможности.
.rpm
файлы представляют собой пакеты RPM, которые относятся к типу пакетов, используемому в дистрибутивах Red Hat и Red Hat (например, Fedora, RHEL, CentOS). .deb
файлы представляют собой пакеты DEB, которые представляют собой типы пакетов, используемые Debian и производными Debian (например, Debian, Ubuntu).
После загрузки, они , как правило , устанавливается при помощи rpm
и dpkg
команд , соответственно , на соответствующих дистрибутивах. Другими словами, они представляют собой файлы, которые устанавливаются rpm
и dpkg
вместо того , .msi
или .exe
установочные файлы , которые Исполняемые , которые устанавливают сами.
Пакеты RPM и DEB отличаются от MSI во многих отношениях.
rpm
и dpkg
).yum
и aptitude
соответственно - существуют так называемые репозитории, которые предлагают пакеты, скомпилированные для соответствующей системы, и менеджер пакетов автоматически установит все зависимости из данных в репозиториях.И то, .deb
и другое .rpm
- это пакеты программного обеспечения для дистрибутивов GNU / Linux, содержащие программное обеспечение (программы), приложения и т. Д.), А также информацию для программного обеспечения "* installer *" о самом программном обеспечении и инструкции о том, как устанавливать, что и где правильно.
.deb
→ Пакет программного обеспечения Debian , на основе дистрибутивов Debian. Устанавливается с помощью, например, apt
/ aptitude
(Командная строка) или графически с помощью, например, « Synaptic », « Ubuntu Software Center », « Gdebi »,….rpm
→ Диспетчер пакетов Red Hat : в дистрибутивах Linux для Fedora / Red Hat. Устанавливается, например, через yum
(командную строку) или графически, например, через " yumex ".msi
is → Microsoft Installer : примерно так же, как и выше, для ОС Microsoft WindowsСами установщики также могут выполнять обслуживание, обновление и / или удаление пакетов. Кроме того: здесь « установщик » означает программное обеспечение для правильного выполнения этих задач - оно также предоставляет упомянутую информацию для самого пользователя, конечно, для выполнения таких задач вручную.
yumex
что это правильное имя ... спасибо за подсказку
.deb
: Пакет Debian, используемый для дистрибутивов Linux на основе Debian, таких как Ubuntu, Linux Mint и т. Д.
.rpm
: rpm
установщик для дистрибутивов Linux на базе Red Hat, таких как RHEL, Fedora и CentOS
.msi
: Двоичный установщик для платформы Windows