Наиболее очевидным отличием является то, что он aptitude
предоставляет интерфейс меню терминала (очень похоже на Synaptic в терминале), тогда как apt-get
нет.
Рассматривая только интерфейсы командной строки каждого из них, они очень похожи, и по большей части не имеет значения, какой из них вы используете. Последние версии обоих будут отслеживать, какие пакеты были установлены вручную, а какие установлены как зависимости (и, следовательно, могут быть автоматически удалены). На самом деле, я полагаю, что еще совсем недавно эти два инструмента были обновлены, чтобы фактически использовать одну и ту же базу данных вручную и автоматически установленных пакетов, поэтому случаи, когда вы устанавливаете что-то с помощью apt-get, а затем aptitude хочет удалить это, в основном, прошлое.
Есть несколько незначительных отличий:
- aptitude автоматически удалит подходящие пакеты, тогда как apt-get требует для этого отдельной команды
- Команды для обновления вместо dist-upgrade были переименованы в aptitude, возможно, для более точных имен safe-upgrade и full-upgrade соответственно.
- На самом деле aptitude выполняет функции не только apt-get, но и некоторых сопутствующих инструментов, таких как apt-cache и apt-mark.
- aptitude имеет немного другой синтаксис запроса для поиска (по сравнению с apt-cache)
- У aptitude есть команды « почему» и « почему», которые говорят вам, какие установленные вручную пакеты препятствуют выполнению действия, которое вы, возможно, захотите предпринять.
- Если действия (установка, удаление, обновление пакетов), которые вы хотите предпринять, вызывают конфликты, aptitude может предложить несколько возможных решений. apt-get просто скажет: «Извини, Дейв, я не могу позволить тебе сделать это».
Есть и другие небольшие отличия, но это самые важные, о которых я могу подумать.
Короче говоря, aptitude более правильно относится к категории с Synaptic и другим интерфейсам менеджера пакетов более высокого уровня. Просто так получилось иметь интерфейс командной строки, похожий на apt-get.
Бонусный раунд: что такое ваджиг?
Помните, как я упоминал о таких «сопутствующих» инструментах, как apt-cache и apt-mark? Ну, есть куча их, и если вы часто их используете, вы можете не помнить, какие из них предоставляют какие команды. Ваджиг является одним из решений этой проблемы. По сути, это диспетчер, обертка вокруг всех этих инструментов. Также применяется sudo, когда это необходимо. Когда вы говорите wajig install foo
, Ваджиг говорит: «Хорошо, install
предоставляется apt-get
и требует прав администратора», и он запускается sudo apt-get install foo
. Когда вы говорите wajig search foo
, Ваджиг говорит: «Хорошо, search
предоставляется apt-cache
и не требует прав администратора», и он запускается apt-cache search foo
. Если вы используете wajig вместо apt-get, apt-mark, apt-cache и других, то у вас никогда не возникнет этой проблемы:
$ apt-get search foo
E: Invalid operation search
Если вы хотите узнать, что ваджиг делает за кулисами, какие инструменты он использует для реализации конкретной команды, у него есть --simulate
и --teaching
режимы.
Два wajig команды , которые я часто использую это wajig listfiles foo
и wajig whichpkg /usr/bin/foo
.