11

Я пытался выяснить, как установить libgtk2.0-dev и обнаружил, что я должен использовать

sudo aptitude install

вместо

sudo apt-get install

Почему эти два разных способа получить вещи?

5 ответов5

12

apt-get и aptitude являются внешними интерфейсами для dpkg. Используйте одно или другое, но будьте последовательны. Aptitude является более новым и предполагается, что его легче использовать. Он также объединяет некоторые функции apt-* . Вы можете использовать aptitude для поиска и установки, в то время как для apt- * вам нужны apt-get и apt-cache для установки и поиска соответственно.

Я обычно заменяю все примеры apt-get на aptitude при копировании и вставке команд.

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

3

apt-get и aptitude являются интерфейсами для dpkg, менеджера пакетов Debian.

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

Запись в Википедии о aptitude гласит, что она начиналась как интерфейс для apt- suite:

aptitude - это интерфейс расширенного инструмента упаковки (APT). Он отображает список пакетов программного обеспечения и позволяет пользователю интерактивно выбирать пакеты для установки или удаления. [...] Несмотря на то, что aptitude является единственным исполняемым файлом, он обеспечивает функциональность CLI, аналогичную функциональности инструментов семейства apt (apt-get, apt-cache, apt-listchanges и т.д.). Aptitude также эмулирует большинство параметров командной строки apt-get, что позволяет ему заменять некоторые варианты использования apt-get.

2

Давние пользователи Debian говорили мне, что у aptitude есть своя собственная база данных, которую он поддерживает вместе с той, что хранит apt . Это означает, что использование обоих взаимозаменяемо может привести к некоторым запутанным вещам, происходящим иногда, особенно в aptitude когда кажется, что он имеет слегка устаревшую копию состояния пакета. Я видел, как это произошло: это приводит к таким вещам, как пакеты, которые вы таинственным образом не можете удалить или не можете установить.

GUI программа synaptic не имеет эту проблему , поскольку она целиком опирается на apt базе данных.

1

Aptitude и apt-get служат одной и той же цели для Ubuntu Dapper и за его пределами. До этого apt-get не мог автоматически удалять вещи, как следует.

Источник: http://www.psychocats.net/ubuntu/aptitude

0

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

Ничего страшного, если вы не установите пакеты с помощью build-dep, начиная с 8.10, все установленные пакеты build-dep помечаются как автоматически установленные (будут добавлены для автоматического удаления в apt-get и удалены в aptitude.

(если вы планируете собирать и использовать 'build-dep', тогда это предотвратит автоматическую маркировку, если вы хотите сохранить (и или запретите большой список автоматического удаления в apt-get Ex. mplayer sudo apt-get build-dep mplayer -o APT::Get::Build-Dep-Automatic = ложь

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .