В чем разница между APT и APT-GET?
И apt, и apt-get являются инструментами командной строки. Их можно использовать для управления пакетами программного обеспечения, такими как приложения и библиотеки, на серверах и экземплярах серверов Linux на базе Debian. Поскольку Linux основан на открытом исходном коде, вы можете настраивать систему в соответствии с вашими требованиями, используя разные пакеты. Операционные системы Linux на базе Debian используют для управления пакетами программного обеспечения Advanced Package Tool (APT). Инструмент командной строки apt предоставляет пользователям более высокоуровневый пользовательский интерфейс с интуитивно понятными командами, предсказуемым поведением и функциями безопасности. Напротив, команда apt-get реализует интерфейс более низкого уровня, который более тесно взаимодействует с основными процессами Linux. Команда apt более удобна для управления пакетами, чем apt-get.
Итак, в чем же сходство между apt и apt-get?
Как apt, так и apt-get являются инструментами для управления пакетами в дистрибутивах Linux на основе Debian, включая Debian, Ubuntu, Linux Mint и elementary OS. Есть и другие инструменты для этой задачи, например aptitude и synaptic, но по умолчанию в системе используются именно apt-get и apt.
Далее мы опишем сходства между apt и apt-get.
Интерфейс
Обе утилиты командной строки apt и apt-get доступны через интерфейс командной строки Linux (CLI). Чтобы использовать интерфейс командной строки Linux, откройте окно терминала или окно виртуального терминала.
Документация
Для получения официального описания утилит apt и apt-get введите в командной строке команду apt или apt-get, соответственно. Вы получите список наиболее распространенных команд apt и apt-get.
Например, apt update или apt-get update обновляют список доступных пакетов программного обеспечения из официальных репозиториев. Также здесь перечислены параметры, которые можно указывать после команд apt и apt-get. Например, apt update —quiet выводит в терминал меньше информации о результатах, чем обычная apt update.
Обратите внимание: если вы вошли в систему без прав администратора, перед каждой командой apt и apt-get нужно добавлять команду sudo. Например, можно ввести sudo apt-get update.
Примеры использования
Наиболее распространенные задачи, которые выполняются с помощью apt и apt-get — это установка, обновление и удаление пакетов программного обеспечения. Пакеты программного обеспечения могут содержать приложения, библиотеки, утилиты и инструменты.
В следующей таблице показан синтаксис одинаковых команд в этих средствах.
apt
apt-get
Ключевые отличия: apt и apt-get
Разница между apt и apt-get не ограничивается тем, что apt является более новой реализацией apt-get. Команда apt создавалась как более удобная альтернатива apt-get, в которой для удобства пользователей объединены функциональные возможности нескольких инструментов для управления пакетами.
Далее мы обсудим другие различия между apt и apt-get.
Даты релиза
apt-get была выпущена в 1998 году вместе с дистрибутивом Debian 2.0 (Hamm), а apt появилась только в 2014 году с дистрибутивом Debian 8 (Jessie). После 2014 года apt заменила apt-get в роли инструмента управления пакетами по умолчанию во всех дистрибутивах Linux на базе Debian.
Возможности поиска
Вы можете искать пакеты по имени с помощью команды apt search . Эта команда возвращает подробное описание всех пакетов, имена которых содержат указанную в команде строку. Такая операция была невозможна в apt-get. Для выполнения аналогичной задачи использовалась команда apt-cache.
Разрешение зависимостей
Любой программный пакет обычно поставляется со списком программных зависимостей, то есть библиотек или инструментов, необходимых для его правильной работы. Перед установкой пакета необходимо установить все его зависимости.
И apt, и apt-get обрабатывают разрешение зависимостей, но apt это делает намного лучше. Она определяет сложные цепочки зависимостей, всегда устанавливает пакеты в правильном порядке и предлагает рекомендации по установке дополнительных пакетов.
Версии пакетов в файловой системе
По умолчанию команда apt upgrade удаляет из системы старые версии установленных или обновляемых пакетов, которые больше не нужны.
Напротив, команда apt-get upgrade этого не делает. Это означает, что apt upgrade приносит дополнительную помощь, освобождая место на диске.
Вывод информации в терминал в текстовом виде
Как apt-get, так и apt выводят в терминал информацию о состоянии, которая позволяет понять реакцию системы на введенную команду. Средство apt предоставляет пользователю немного более подробную информацию, в том числе индикатор выполнения каждой задачи.
Как apt заменяет apt-get?
Средство apt теперь по умолчанию используется для управления пакетами в дистрибутивах Linux на базе Debian, заменив собой apt-get и apt-cache. Большинство команд apt-get записываются одинаково в каждой новой команде apt.
Однако в прошлом для некоторых команд apt-get приходилось использовать еще и команду apt-cache. В следующей таблице показано, как эти команды теперь выполняются в apt.
apt-cache
apt-get
apt
Нет никакой необходимости заменять команды apt-get на команды apt в уже существующих скриптах Linux. Они будут и далее работать так, как ожидается, и поддержка apt-get не прекращается. Более того, сохранение apt-get в скриптах обеспечит более корректную работу, так как некоторые функциональные возможности старых команд apt-get при переносе в apt были немного изменены.
Но обычному пользователю Linux лучше использовать apt вместо apt-get, если иное не требуется для конкретного проекта или в конкретной среда.
Краткое описание различий между apt и apt-get
apt-get
apt
Инструмент командной строки для управления пакетами программного обеспечения в системах Linux на базе Debian.
Инструмент командной строки для управления пакетами программного обеспечения в системах Linux на базе Debian.
Год выпуска и первоначальный дистрибутив Debian
1998 г., дистрибутив Debian 2.0 (Hamm).
2014 г., дистрибутив Debian 8 (Jessie).
Нет. Вместо поиска пользователи должны использовать команды управления пакетами apt-cache.
Простое разрешение зависимостей.
Комплексное решение зависимостей с помощью предлагаемых установок программного обеспечения.
Версии пакетов в файловой системе
При использовании apt-get upgrade старые версии пакетов сохраняются в файловой системе.
Более старые версии пакетов удаляются из файловой системы при использовании apt upgrade.
Вывод результатов операций в текстовой форме
Предоставляет пользователю базовые данные о работе каждой команды apt-get, без особых подробностей.
Выводит подробные данные с результатами и операциями каждой команды apt, а также индикатор выполнения задач.
Как AWS поддерживает ваши требования к Linux?
Amazon Web Services (AWS) предлагает широкий ассортимент стабильных и высокопроизводительных операционных систем на базе Linux с высоким вниманием к безопасности. У нас есть оптимальные варианты операционных систем как для размещения рабочих нагрузок общего назначения, так и для узко специализированных контейнеров. Дополнительные сведения см. в статье AWS о Linux.
Например, Amazon Linux 2023 — это серверная операционная система Linux компании AWS. Она обеспечивает безопасную, стабильную и высокопроизводительную среду для разработки и выполнения облачных и корпоративных приложений. В комплекте предоставляются долгосрочная поддержка и доступ к самым свежим обновлениям без дополнительной оплаты.
Создайте учетную запись и начните работу с сервером Linux на AWS уже сегодня.
Apt vs apt-get: в чем разница
Начиная с Ubuntu 16.04 в дистрибутиве появился новый пакетный менеджер apt. Он работает почти так же, как и apt-get, но имеет несколько отличий, о них мы и поговорим в этой статье. На самом деле, первая стабильная версия apt вышла в 2014 году, но в широкое использование она попала только два года спустя.
Вам, наверное, интересно, что такое apt? Это следующая версия apt-get. Она имеет почти идентичную структуру команд, но отличия есть. Но давайте сначала разберемся почему был выпущен новый пакетный менеджер.
Почему появился apt?
Раньше в Ubuntu использовалась очень мощная система управления пакетами дистрибутива Debian. Её преимущество в том, что она имеет очень много функций, полезных для разработчиков, но из этого возникает один недостаток: эти функции были разнесены по нескольким исполняемым файлам. Большинство возможностей обычные пользователи не используют, а те, которые они используют оказались разбиты на две утилиты: apt-get и apt-cache.
Ubuntu стремится к простоте. Утилита apt была реализована, чтобы упростить работу с менеджером пакетов и объединить несколько команд в одну. Функциональность apt-get и apt-cache была переписана, и несмотря на то, что теперь утилита полностью совместима с apt-get, у неё новый исходный код.
Хотят ли люди признавать или нет, но apt-get — устаревший инструмент и практичность его применения очень сомнительна. Инструмент apt был разработан с нуля, чтобы быть еще эффективнее, он предназначен быть приятным для новых пользователей.
Apt vs Apt-get. В чем различия?
Что использовать, apt или apt-get? В чем же разница между этими двумя утилитами? Для начала вам больше не нужно использовать apt-get autoremove, чтобы очистить кеш пакетов, пакеты будут удаляться автоматически. Также вам не нужно вводить apt-cache search для поиска пакетов.
Эти команды были заменены на apt search и apt remove. Главное отличие apt от apt-get в том, что программа объединяет большинство команд apt-get и apt-cache. Вся функциональность теперь находится в одной утилите.
Хотя это не единственное отличие от apt-get. Здесь улучшены прогресс бары установки пакетов. Ещё поддерживаются некоторые дополнения, которые делают утилиту умнее предыдущей. Например, при обновлении источников программного обеспечения с помощью apt-get нет простого способа посмотреть список пакетов доступных к обновлению. Здесь же вы можете просто выполнить:
sudo apt-get update
apt list —upgradable
Конечно, мелочи, но приятно. Также были добавлены новые, современные цвета вывода, и в целом установка пакетов проходит быстрее. Canonical не спешит отказываться от apt-get, но они сделают это позитивным изменением.
Новые команды Apt
Вот список поддерживаемых apt команд, взятый прямо из вывода —help. Эти команды очень похожи на реализацию apt-get и apt-cache, но более упорядочены и сгруппированы.
- list — список пакетов;
- search — поиск пакетов по имени;
- show — показать подробную информацию о пакете;
- update — обновить списки доступных пакетов;
- install — установить пакет;
- remove — удалить пакет;
- upgrade — установить доступные новые версии пакетов;
- full-upgrade — полное обновление системы;
- edit-sources — редактировать файл источников программного обеспечения.
Более подробную информацию вы найдете, выполнив man apt в терминале. Хранящаяся там информация поможет вам досконально изучить новую утилиту.
Выводы
Утилита apt-get проверенная и надежная часть менеджера пакетов Debian. Этот инструмент используется на протяжении большого времени и поставляется по умолчанию во многих релизах Ubuntu и Debian. Мы всегда его использовали когда нужно было обновить что-то, обновить программное обеспечение или даже просто очистить систему от мусора.
Тем не менее, она устаревает. Менеджер пакетов уже не отвечает всем потребностям пользователей, а поэтому он медленно заменяется на apt. Разработчики Ubuntu понимают, что им нужно обновить свой пакетный менеджер, сделать его более простым, элегантным и безопасным. Но пока в системе существуют обе утилиты и выбирать что использовать apt или apt-get предстоит вам. Будете ли вы использовать новый менеджер пакетов? Или уже используете?
Разница между apt и apt-get в Linux
Многие пользователи Linux часто не понимают разницы между apt и apt-get, что немудрено: обе утилиты используются для установки, обновления, удаления пакетов и во многом схожи друг с другом. В этой статье мы обсудим разницу между apt и apt-get.
Примечание: Cтоит различать команду apt и APT (Advanced Packaging Tool), т.к. несмотря на схожесть их наименования, это, все-таки, разные понятия.
Оглавление:
- Что такое APT?
- Утилита apt
- Утилита apt-get
- Что не так с apt-get?
- Как apt решает эту проблему?
- Получается, apt-get устарел?
- В чем разница между apt и apt-get?
- Так что же мне следует использовать: apt или apt-get?
Что такое APT?
APT (Advanced Packaging Tool) — это набор утилит командной строки, с помощью которых вы можете взаимодействовать с системой управления пакетов dpkg, применяемой в Debian и других, основанных на Debian, дистрибутивах.
Такие утилиты, как apt, apt-get, apt-cache, apt-config и aptitude (графический интерфейс к APT), взаимодействуют с APT для выполнения различных действий над пакетом (установка, обновление и удаление).
Утилита apt
apt — это утилита командной строки для установки, обновления и удаления пакетов в Ubuntu, Debian и производных дистрибутивах. Она сочетает в себе функционал apt-get, apt-cache и dpkg. Утилита apt создавалась с намерением исправить недостатки, присутствовавшие в apt-get, и не содержит некоторый функционал утилиты apt-get.
Утилита apt-get
apt-get — это консольная утилита управления пакетами, которая широко используется в системах на базе Debian. Команда apt-get позволяет устанавливать, обновлять и удалять пакеты. Для поиска новых пакетов применяется команда apt-cache.
apt-get можно рассматривать как более низкоуровневую надстройку для APT.
Что не так с apt-get?
Утилита apt-get неэффективна и не имеет определенных функций, которые должны существовать в пакетном менеджере. Например, для установки приложения применяется команда apt-get install , но когда вы хотите выполнить поиск нужного пакета, то не получится просто ввести apt-get search . Необходимо использовать команду apt-cache search .
Аналогично, если вы хотите перечислить все пакеты, установленные в системе, команда будет совершенно другой — dpkg —get-selections . Начинающий пользователь просто запутается в них и захочет уйти еще до того, как начнется его путешествие по изучению Linux.
Функционал команд, которые заменяет утилита apt, следующий:
apt-get — используется для установки, обновления и удаления пакетов;
apt-cache — используется для поиска пакетов;
dpkg -l — используется для перечисления всех пакетов, установленных в системе.
Как apt решает эту проблему?
Утилита apt объединяет в одной команде функциональные возможности apt-get (включая apt-cache и dpkg), упрощая взаимодействие с APT.
Получается, apt-get устарел?
Нет никакой официальной информации о прекращении поддержки apt-get. И этого не произойдет в ближайшем будущем, т.к. apt-get по-прежнему предлагает больше функционала, чем apt.
Команда apt-get продолжит использоваться для выполнения всякого рода низкоуровневых операций, написания скриптов и пр. А команда apt просто является более удобной утилитой для конечного пользователя, упрощая взаимодействие с системой Linux.
В чем разница между apt и apt-get?
Существует 5 основных различий между apt и apt-get:
apt имеет красивую шкалу прогресса;
apt отображает список пакетов, которые могут быть обновлены;
apt объединяет в себе функции apt-get, apt-cache и dpkg -l;
apt имеет новые команды;
различный синтаксис команд apt и apt-get.
apt имеет красивую шкалу прогресса
При установке или удалении пакета с помощью команды apt, отображается шкала прогресса, показывающая в процентах ход выполнения текущей задачи:
apt отображает список пакетов, которые могут быть обновлены
При обновлении базы данных репозиториев, отображается дополнительная строка с информацией о количестве пакетов, которые могут быть обновлены:
После этого вы можете запросить список этих пакетов, выполнив команду apt list —upgradable . Обратите внимание на улучшенный цветовой дизайн, помогающий более точно расставить акценты на необходимых вам элементах:
apt объединяет в себе функции apt-get, apt-cache и dpkg -l
До Ubuntu 16.04 пользователи взаимодействовали с APT, в основном, только через apt-get, apt-config и apt-cache. Эти утилиты поддерживают множество различных дополнительных команд (например, apt-get install/remove/update/upgrade/help и пр.), и пользователи вынуждены были их запоминать. В связи с этим встал вопрос о создании более простого инструмента управления пакетной базой, который бы состоял только из самых необходимых команд.
С выпуском Ubuntu 16.04 и Debian 8 таким инструментом стал apt, объединивший в себе возможности apt-get и apt-cache. Утилита apt более удобна в использовании по сравнению с существующими инструментами из набора APT. Кроме того, теперь вам больше не требуется переключаться между apt-get и apt-cache.
apt имеет новые команды
Помимо упрощения существующих команд, у apt добавилось несколько новых:
Команда apt | Назначение команды |
apt list | Вывод списка установленных и доступных для обновления пакетов. |
apt edit-sources | Редактирование файла /etc/apt/sources.list, содержащего список репозиториев, из которых могут быть скачаны пакеты. |
Различный синтаксис команд apt и apt-get
Хотя утилита apt и сочетает в себе функционал утилит apt-get и apt-cache, но не все её команды имеют обратную совместимость с apt-get. По этой причине, вы не всегда сможете заменить команду apt-get командой apt. В следующей таблице приведено небольшое сравнение команд apt и apt-get:
apt | apt-get | Назначение команды |
apt update | apt-get update | Обновление списка доступных пакетов. |
apt install [имя_пакета] | apt-get install [имя_пакета] | Установка пакета. |
apt upgrade | apt-get upgrade | Установка более новых версий пакетов. |
apt full-upgrade | apt-get dist-upgrade | Обновление всех пакетов и удаление ненужных зависимостей. |
apt remove [имя_пакета] | apt-get remove [имя_пакета] | Удаление пакета. |
apt purge [имя_пакета] | apt-get purge [имя_пакета] | Полное удаление пакета вместе со всеми его конфигурационными файлами. |
apt autoremove | apt-get autoremove | Удаление ненужных зависимостей. |
apt search [имя_пакета] | apt-cache search [имя_пакета] | Поиск пакета по его имени. |
apt show [имя_пакета] | apt-cache show [имя_пакета] | Вывод информации о пакете. |
apt policy | apt-cache policy | Вывод информации об используемых репозиториях, а также их приоритете. |
apt policy [имя_пакета] | apt-cache policy [имя_пакета] | Вывод информации о версии установленного пакета и доступной для обновления версии пакета. |
Так что же мне следует использовать: apt или apt-get?
Команду apt рекомендуют к использованию сами дистрибутивы Linux. Она предоставляет необходимые возможности для управления пакетами, и её проще использовать из-за меньшего количества опций, которые, тем не менее, легко запоминаются.
Команда apt-get остается активной для обеспечения обратной совместимости и используется в тех специфических случаях, где функционала команды apt не хватает.
Чем отличается apt от apt get
В данной статье посмотрим на разницу между пакетными менеджерами apt и apt-get. А также рассмотрим вопрос, как правильно обновлять систему через терминал в Ubuntu подобных системах.
Apt (advanced packaging tool) — это программа для работы с пакетами программ в операционных системах Linux Debian, и основанных на них — Ubuntu, Linux Mint и т.д. По сути, apt — это терминальный (консольный) пакетный менеджер.
На данном сайте во всех статьях об установке каких-либо программ используется команда для установки пакетов:
sudo apt-get install package_name>
Начиная с Ubuntu 16.04 (теперь присуствует и в Ubuntu 14.04) был добавлен новый пакетный менеджер просто «apt» и теперь команда установки пакета выглядит следующим образом:
sudo apt install package_name>
То есть, кроме знакомой нам apt-get добавился ещё apt. И в этой статье мы подробнее рассмотрим разницу между ними.
Возникает логичный вопрос, зачем нужен новый пакетный менеджер?
У старого apt-* существует достаточно ключей, в которых легко запутаться, особенно новичку:
Пакетный менеджер apt заменяет старые apt-get и apt-cache. Непосредственно, реализованы все самые наиболее используемые команды по установке, удалению пакетов, обновлению системы и поиска пакетов. Кроме того, раскрасили в цветах текст выполнения данных команд.
Давайте же разберем список команд нового пакетного менеджера apt:
Для того, чтобы получить краткую подсказку по данным командам, всегда можно выполнить команду:
apt help
Вот краткое описание команд из справки:
Пройдемся подробнее по каждой команде нового пакетного менеджера apt.
install, remove, purge — используются для установки, удаления, удаления с зависимостями пакетов в системе. Отличие от apt-get что добавился прогресс выполнения операции:
search — команда аналогична apt-cache search, используется для поиска пакета в репозиториях. Разница в том, что эта команда выводит сортированный список по алфавиту.
show — команда, аналогичная apt-cache show, показывает подробную информацию о пакете. Разница в том, что теперь информация более краткая и по существу. Скрыты более технические параметры, такие как хеши.
update — команда, аналогичная apt-get update, обновляет информацию о пакетах в добавленных репозиториях в системе. Разница в том, что текст выполнения стал разноцветным:
* Цвета строк с репозиториями меняются только в момент их обновления.
list — команда, похожая на dpkg list, отображает список пакетов в зависимости от дополнительного ключа.
Ключи могут быть следующими:
- —upgradable — просмотр списка пакетов которые могут быть обновлены (есть новые версии в репозиториях)
- —installed — просмотр списка всех установленных пакетов в системе
- —manual-installed — просмотр списка пакетов, которые устанавливались в ручную пользователем
- —all-version — просмотр вообще всех пакетов, описанных выше.
- —verbose — отображение краткой информации (что это за пакет программы) по всем пакетам
Также можно указывать часть имени пакетов, по которым нужно получить информацию, указав звездочку на конце, либо непосредственно полное имя пакета. Пример:
apt list zypper* --verbose
Для удобного чтения этого огромного списка, можно его сохранить в файл. Выполнить перенаправление вывода выполнения команды из терминала в файл:
Для удобного чтения этого огромного списка, можно его сохранить в файл. Выполнить перенаправление вывода выполнения команды из терминала в файл:
apt list --manual-installed > manual-installed.txt
После команды указываем одинарную галочку вправо > , а затем название файла текстового файла. Название текстового файла может быть любое, если используете пробел в названии файла, то его нужно экранировать обратным слешем.
Если текстового файла нет в системе с таким именем, то он будет создан. Если есть в системе, то файл будет перезаписан.
Таким же образом можно сохранить в файл и выводы остальных списков для удобного их просмотра в графическом текстовом редакторе:
Как правильно обновлять систему через терминал в Ubuntu подобных системах.
upgrade — команда аналогична apt-get upgrade —with-new-pkgs, то есть обновляет пакеты, которые уже установлены в системе и доставляет новые пакеты-зависимости.
full-upgrade — команда аналогична apt-get dist-upgrade, то есть обновляет пакеты, которые уже установлены в системе, доставляет новые пакеты зависимости и удаляет пакеты, которые устанавливались в систему и уже не используются.
По поводу разницы обновления в терминале, давайте обратимся за более подробной информацией в мануал apt-get.
apt-get upgrade
upgrade используется для установки новейших версий всех установленных пакетов системы из источников, указанных в /etc/apt/sources.list. Будут разысканы новейшие версии установленных в настоящий момент пакетов и произведено обновление; ни в коем случае не будет удалено ни одного установленного пакета или установлено нового пакета, не имеющего уже установленной в системе предыдущей версии. Текущие версии установленных в настоящий момент пакетов, если они не могут быть обновлены новыми версиями без изменения статуса других пакетов, будут оставлены в неизменном виде. Для того, чтобы apt-get узнал о существовании доступных новых версиях пакетов, данной команде должна предшествовать команда update.
apt-get dist-upgrade
dist-upgrade, в дополнение выполняет функцию upgrade, а также разумно управляет изменением зависимостей с новыми версиями пакетов; apt-get имеет «умную» систему разрешения конфликтов и она будет в случае необходимости пытаться произвести обновление наиболее важных пакетов за счет менее важных. Файл /etc/apt/sources.list содержит список источников для получения пакетов, из которых будут получены файлы пакетов.
Таким образом, когда вы обновляете систему с помощью команды:
sudo apt-get upgrade
то у вас только обновляются установленные пакеты, при этом могут возникнуть конфликты и неудовлетворенные зависимости и новые пакеты не будут устанавливаться.
sudo apt-get dist-upgrade
удалит старые пакеты, разрешит конфликты, доставит необходимые зависимости, доставит новые пакеты, если требуется. Более умный и гибкий инструмент обновления системы.
Именно поэтому в случае пакетного менеджера apt-get, я советую пользоваться dist-upgrade для обновления системы, а про upgrade вообще забыть.
С пакетным менеджером apt можно использовать обе эти команды обновления.
Но в случае использования upgrade, периодически надо будет использовать следующую команду:
autoremove — команда аналогична apt-get autoremove, очищает систему от пакетов, которые были установлены как зависимости других пакетов и уже не используются.
edit-sources — открывает редактор файла со списком системных репозиториев /etc/apt/sources.list. Больше про эту команду сказать и нечего. Огромной полезности в ней не вижу. Этот файл можно отредактировать без данной команды.
Пришло время переходить на пакетный менеджер apt.
Давно пора было разработчикам сделать выполнение таких наиболее используемых команд пакетного менеджера в Ubuntu более лаконичными без постфиксов apt-get, apt-cache и с доработкой скриптов выполнения команд.
В дальнейшем, на данном сайте в статьях будут использоваться команды нового пакетного менеджера.