Как главные диспетчеры пакетов отличаются?

Я погуглил немного вокруг с 'мягкой фетровой шляпой, добавляет репозиторий' и получил некоторых, которые устарели и не очень полезные ссылки. Из-за шума я пропустил эту ссылку:

http://docs.fedoraproject.org/en-US/Fedora_Core/3/html/Software_Management_Guide/sn-using-repositories.html

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

Добавьте новые репозитории

(который также упоминает wget метод, я раньше добавлял .repo файл),

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

4
03.02.2011, 19:43
3 ответа

хорошо это в основном о виде пакетов, с которыми они имеют дело (склонный - deb; конфетка - об/мин; pacman - tar.gz), где эти упаковочные системы несколько отличаются сами... затем, существует вопрос того, как хорошо они имеют дело с зависимостями (довольно важными)... и конечно - возможности, которые они предоставляют и как они могут представить данные об устанавливаемых пакетах... Я сказал бы, что они будут некоторыми существенными различиями...

2
27.01.2020, 20:57
  • 1
    "pacman - tar.gz" является немного вводящим в заблуждение. Это делает кажется будто любой tar.gz-файл, был бы допустимый pacman-пакет. –  sepp2k 21.08.2010, 15:33

Диспетчеры пакетов, которые Вы цитируете, являются действительно просто выбором фронтендов к базовой упаковочной системе. Например, конфетка является фронтендом к об/мин, и другие существуют (умный, застежка-молния, apt4rpm, и так далее). Точно так же средняя основанная на DPKG система имеет два или три диспетчера пакетов по умолчанию (Синаптический, Способность, склонный - добираются, dselect, и так далее). Я не знаю достаточно о Pacman для комментария там.

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

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

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

1
27.01.2020, 20:57

С GNU grep :

start cmd:> echo "This is one word1:word2 of the lines" |
  grep -Eo '[[:alnum:]]+:[[:alnum:]]+'
word1:word2

start cmd:> echo "This is one wordx:wordy of the lines" |
  grep -Eo '[[:alpha:]]*:[[:alpha:]]*'
wordx:wordy

start cmd:> echo "This is one wo_rdx:wo_rdy of the lines" |
  grep -Eo '[[:alpha:]_]*:[[:alpha:]_]*'
wo_rdx:wo_rdy
-121--167065-

Двоичный файл проверяет свое имя файла.

0:root@SERVER:/root # ln -s /usr/es/sbin/cluster/utilities/clpasswd /tmp/passwd
0:root@SERVER:/root # /tmp/passwd -R files root
Changing password for "root"
root's New password:
Terminating from signal
0:root@SERVER:/root # mv /tmp/passwd /tmp/clpasswd
0:root@SERVER:/root # /tmp/clpasswd -R files root
/tmp/clpasswd: illegal option -- R


Usage: clpasswd cluster_user [ -g ResourceGroup ]
Where:
    -g ResourceGroup - Update on participating nodes only
                       Otherwise all cluster nodes receive update

0:root@SERVER:/root #  
-121--116450-

Диспетчеры пакетов можно разделить на две основные категории:

  1. Двоичные диспетчеры пакетов : программное обеспечение построено на какой-то удаленной машине и вы получаете только результат компиляции. Наиболее популярными (только?) форматами являются deb (apt) и rpm (yum).

  2. Диспетчеры исходных пакетов : источник программного кода извлекается непосредственно, и компиляция выполняется локально. Некоторые управляющие исходными пакетами: emerge, pacman, yaourt, slackpkg, pkgng от BSD, Mac Ports, Homebrew, pip (Python), gem (Ruby) и т.д.

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

Недостатки размер пакета (несколько раз больше, чем исходный код) и системная жесткость : в отличие от Windows, наборы из двух предметов на обычном Linux включают трудно закодированные пути и re-locable наборы из двух предметов (наборы из двух предметов, которые вы можете переместить), трудные произвести. То есть двоичный пакет управляет, как правило, только работой в/usr.

Чтобы дать вам представление о различиях между источниками и двоичными файлами, архив Debian в настоящее время немного больше, чем 1Tb, но только 72Gb для источников! Одна архитектура, например amd64, около 95 + 92 = 187Gb (2,5 больше (1)).

Другая проблема с двоичными пакетами - исправленные флаги компиляции : некоторые дополнительные функции могут быть отключены в системном пакете, некоторые современные расширения CPU также могут быть отключены по причинам совместимости...

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

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

(1) 95Gb + 92Gb - сумма пакетов amd64 и «всех» пакетов, которые являются независимыми от архитектуры файлами (мультимедийные ресурсы, шрифты, документация и т.д.)

1
27.01.2020, 20:57

Теги

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