В чем разница между apt-get и dpkg?

24

У меня есть несколько вопросов относительно apt-getVS. dpkg.

  • Они устанавливают в одно и то же место?
  • Является ли информация из этих инструментов 1 к 1 друг с другом?
  • Есть ли разница в утилите команд?
MageProspero
источник
1
Нажмите здесь, чтобы получить более подробную информацию о apt-get, dpkg и aptitude.
Арун Куриан

Ответы:

35

apt-getиспользует dpkgделать фактические установки пакета. Таким образом, в некотором смысле они «устанавливаются» в одно и то же место.

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

При этом бывают случаи, когда вам придется использовать dpkgзапросы к системе, чтобы узнать информацию об установленных пакетах.

Основной причиной использования aptинструментов является управление зависимостями. Эти aptинструменты понимают , что для того , чтобы установить данный пакет, другие пакеты , возможно , должны быть установлены также, и aptможет загрузить их и установить их, в то время как dpkgне делает.

SLM
источник
Спасибо, это именно то, что мне было нужно. Возможно, вы можете дать совет по unix.stackexchange.com/questions/104594/… также
MageProspero
@ user54189 - какой совет по поводу Q? Команды dpkg -Lи dpkg -S2 сценария, где вам нужно прибегнуть к dpkg, чтобы получить метаинформацию этого типа. Эти aptинструменты не имеют его в удобном для моды доступа.
SLM
Большинство запросов, которые вы можете выполнить, dpkg-queryтакже могут выполняться, aptitudeа иногда и apt-cache.
Жиль "ТАК - перестань быть злым"
ХОРОШО. Значит ли это, что dpkg всегда будет давать более полный список всех пакетов, установленных в системе (включая зависимости и т. Д.), Чем apt-get? И безопасно ли предположить, что dpkg может использоваться для перечисления ВСЕ программного обеспечения (пользователя / системы / и т. Д. Приложений), установленного в системе?
qre0ct
@ qre0ct - это новый вопрос, задайте его на главном сайте и дайте ссылку на этот вопрос.
SLM