Когда я впервые начал работать с Ubuntu, использование aptitude
было «неотъемлемой частью», с некоторыми заявленными улучшениями по сравнению с apt-get
. Правильно ли я сказал, что apt-get
теперь «догнал» aptitude
, и это мало что меняет (хотя предпочтительнее выбрать один или другой и придерживаться его)?
aptitude
, установленным для удаления из установки Ubuntu по умолчанию, все должны вернуться к apt-get
, особенно когда вы ведете новых пользователей, заинтересованных в CLI?
Насколько я вижу, в 10.04 основные различия между aptitude и apt-get следующие:
aptitude
добавляет явные флаги для каждого пакета, указывая, является ли пакет был автоматически установлен для удовлетворения зависимости: вы можете манипулировать этими флагами (aptitude markauto
или aptitude unmarkauto
), чтобы изменить способ, которым aptitude обрабатывает пакет.
apt-get
отслеживает ту же информацию, но не будет отображать ее явно. apt-mark
может использоваться для манипулирования флагами.
aptitude
будет предлагать удалять неиспользуемые пакеты каждый раз, когда вы удаляете установленный пакет, тогда как apt-get
будет делать это только в случае явного запроса с помощью apt-get autoremove
или указания --auto-remove
.
aptitude
действует как единый интерфейс командной строки для большинства функций как в apt-get
, так и apt-cache
. Примечание : По состоянию на 16.04 существует команда apt
, которая включает наиболее часто используемые команды из apt-get
и apt-cache
и несколько дополнительных функций.
В отличие от «поиска» apt-cache
, вывод «поиска» aptitude
также показывает установленное / удаленное / очищенное состояние пакета (плюс собственные флаги состояния aptitude). Кроме того, выходные данные «install» отмечают, какие пакеты устанавливаются для удовлетворения зависимости, а какие удаляются из-за неиспользования.
aptitude
имеет (только текстовый) интерактивный интерфейс.
Лично я использую только aptitude
для управления пакетами из командной строки (и я никогда не использую текстовый интерфейс); Я нахожу его вывод более читабельным, чем apt-get
/ apt-cache
.
Однако, если aptitude
больше не будет стандартом в Ubuntu, нет другого выбора, кроме как использовать apt-get
в инструкциях и инструкциях.
(Лично я довольно разочарован, увидев, что это исчезнет в 10.10; тем более что улучшения способности по сравнению с apt-get
в основном связаны с удобством использования. Я думаю, они считают, что те, кто знаком с командной строкой, знают, как вернуть способности, и тем, кто не использует командную строку, все равно ...)
В дополнение к другим ответам также стоит отметить, что apt-get
часто падает на первый план для простых операций, и у него нет возможности обрабатывать несоответствия версий зависимостей или поврежденные пакеты (хотя он утверждает, что поврежденные пакеты можно исправить с apt-get install -f
я буквально никогда не видел эту работу за всю свою жизнь).
По какой-то причине я все еще использую apt-get
по умолчанию, но когда он сталкивается с проблемами, я обычно заканчиваю тем, что решаю их с помощью aptitude
, который, кажется, никогда не сталкивается с многочисленными проблемами apt-get
. [ 116]
aptitude
является лучшей альтернативой в этом смысле.
– lmNt
07.11.2019, 12:12
На сервере я предпочитаю Atitude, потому что он поставляется с довольно хорошим интерфейсом для проверки журналов изменений пакетов, выборочных обновлений и тому подобного. apt-get работает быстрее, и я всегда использую его, если просто хочу обновить все без особых хлопот.
Ранее apt-get не управлял зависимостями должным образом и, следовательно, заставлял потерянные зависимости оставаться в системе даже после удаления пакета, который их использовал - это уже не так, для удаления потерянных зависимостей используйте
[110 ]aptitude всегда делал это правильно и лучше отслеживал зависимости, но теперь оба менеджера пакетов выполняют свою работу.
В Ubuntu лучше использовать apt-get, потому что он поддерживается и одобрен компанией, в Debian я бы использовал aptitude
Полагаю, это вопрос личного выбора. Я считаю, что набор текста aptitude search
имеет для меня больше смысла, чем apt-cache search
, и мне нравится, что он говорит мне, какие пакеты я установил прямо в результатах поиска, вместо того, чтобы запускать dpkg -l
.
apt-get
немного более тщателен, чем aptitude
. Последний, кажется, смотрит только на имя пакета, в то время как первый также ищет описания, я думаю. например Попробуйте найти build-essential
.
– codemilan
07.11.2019, 12:14
aptitude search
.
– smartcaveman
07.11.2019, 12:15
Я бы сказал, что в моем личном опыте aptitude и apt-get имеют очень схожую функциональность.
Основное отличие, которое приходит на ум при выборе пользователей, заключается в том, что aptitude предлагает интерфейс ncurses и предлагает варианты безопасного и полного обновления, которые могут пригодиться.
Лично я всегда использую apt-get и рекомендую, чтобы новые пользователи также использовали apt-get. Как вы уже сказали, если установить aptitude для удаления из Ubuntu по умолчанию, эта рекомендация все же кажется лучшей. Как будто они хотят использовать aptitude, им нужно знать, как использовать apt-get для установки aptitude, если они этого хотят:)
/etc/apt/preferences
(и закрепление в нем), но в настоящее время игнорирует/etc/apt/preferences.d/
. Это известная ошибка , поэтому есть надежда, что она будет исправлена в ближайшее время. – Sebastian Mach 07.11.2019, 12:12sudo apt-get install aptitude
) – Joebone 07.11.2019, 12:12apt-get autoremove
. – stoj 07.11.2019, 12:13aptitude changelog package-name
. Мне не известна такая особенность вapt-get
. – nickgrim 07.11.2019, 12:14