Я пытался выяснить, как установить libgtk2.0-dev и обнаружил, что я должен использовать
sudo aptitude install
вместо
sudo apt-get install
Почему эти два разных способа получить вещи?
Я пытался выяснить, как установить libgtk2.0-dev и обнаружил, что я должен использовать
sudo aptitude install
вместо
sudo apt-get install
Почему эти два разных способа получить вещи?
apt-get
и aptitude
являются внешними интерфейсами для dpkg. Используйте одно или другое, но будьте последовательны. Aptitude является более новым и предполагается, что его легче использовать. Он также объединяет некоторые функции apt-*
. Вы можете использовать aptitude
для поиска и установки, в то время как для apt- * вам нужны apt-get
и apt-cache
для установки и поиска соответственно.
Я обычно заменяю все примеры apt-get
на aptitude
при копировании и вставке команд.
Запустите aptitude
без каких-либо опций, чтобы получить интерфейс для выбора пакетов. Я никогда не пользуюсь им, поэтому не знаю, насколько это дружелюбно.
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.
Давние пользователи Debian говорили мне, что у aptitude
есть своя собственная база данных, которую он поддерживает вместе с той, что хранит apt
. Это означает, что использование обоих взаимозаменяемо может привести к некоторым запутанным вещам, происходящим иногда, особенно в aptitude
когда кажется, что он имеет слегка устаревшую копию состояния пакета. Я видел, как это произошло: это приводит к таким вещам, как пакеты, которые вы таинственным образом не можете удалить или не можете установить.
GUI программа synaptic
не имеет эту проблему , поскольку она целиком опирается на apt
базе данных.
Aptitude и apt-get служат одной и той же цели для Ubuntu Dapper и за его пределами. До этого apt-get не мог автоматически удалять вещи, как следует.
Одно из незначительных отличий заключается в том, что если у вас есть пакеты, помеченные как «автоматическое удаление», то, хотя простая установка 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 = ложь