Что такое APT
APT (сокращение от Advanced Packaging Tool) — это набор утилит для установки, удаления, обновления, поиска пакетов в Linux, а также для управления репозиториями. APT еще называют пакетным менеджером.
APT использует репозитории пакетов. Список репозиториев для APT хранится в файле /etc/apt/sources.list, а также в директории /etc/apt/sources.list.d/.
APT используется в дистрибутивах, основанных на Dedian и Ubuntu.
Для управления APT существуют разные утилиты, но самые популярные из них это утилиты командной строки apt-get и apt.
В данной статье мы рассмотрим, как пользоваться командой apt, а также узнаем, чем отличается apt от apt-get.
Чем отличаются apt и apt-get
Кратко ответим на очень популярный вопрос, а в чем разница между командами apt и apt-get?
apt это утилита, которая появилась, как альтернатива apt-get. Она выполняет практически все те же функции, что и apt-get, но с ней проще и понятнее работать.
Например, все команды apt имеют простой синтаксис: apt название_команды. А у apt-get есть дополнительные команды, например, apt-cache. Таким образом, при использовании apt, пользователю не нужно запоминать дополнительные наборы команд.
Помимо упрощения работы с командами, apt нагляднее выводит информацию, вроде бы мелочи, но работать удобнее. Например, apt умеет показывать прогресс бар, а при выполнении apt update можно увидеть сколько пакетов можно обновить.
Стоит отметить, что утилита apt-get более функциональна, чем apt. Но для рядового пользователя apt будет более чем достаточно.
Команда apt
Синтаксис команды apt следующий:
sudo apt <действие> <пакет(ы)> <доп. параметры>
Обновить список пакетов
sudo apt update
У APT есть список репозиториев, из которых происходит установка пакетов. Список хранится в текстовом файле /etc/apt/sources.list, а также в директории /etc/apt/sources.list.d/. При выполнении команды apt update, APT проходит по списку репозиториев и из каждого репозитория в списке получает информацию о пакетах, находящихся в репозитории. Вся эта информация сохраняется в системе.
Если выходит новая версия какого-нибудь пакета, то APT не узнает об этом, пока не будет выполнена команда apt update. Поэтому, если установить данный пакет (не выполнив предварительно apt update), то будет установлена та версия пакета, информация о которой хранится в системе в данный момент.
Нужно ли выполнять apt update перед установкой каждого пакета?
Нет, перед установкой каждого пакета apt update конечно же выполнять не следует. Достаточно выполнять apt update периодически. Если вам предстоит установка нескольких пакетов, то сначала можно один раз выполнить apt update, а потом уже устанавливать пакеты.
Крайне рекомендуется выполнять apt update перед обновлением пакетов (перед apt upgrade).
Обновить установленные пакеты
Чтобы выполнить обновление пакетов, установленных в системе, используется команда:
sudo apt upgrade
Данная команда только обновляет пакеты до новых версий, но никогда не удаляет и не устанавливает другие пакеты.
Есть еще одна команда для обновления пакетов:
sudo apt full-upgrade
Данная команда выполняет обновление пакетов, а также удаляет или устанавливает новые пакеты, если это потребуется для разрешения зависимостей.
Установить пакет
Чтобы установить пакет используется команда:
sudo apt install <пакет>
Установить несколько пакетов
Для установки нескольких пакетов их имена записываются через пробел:
sudo apt install <пакет1> <пакет2> <пакет3>
Установить определенную версию пакета
Чтобы установить определенную версию пакета нужно после названия пакета, через знак равенства, указать требуемую версию:
sudo apt install <пакет>=<версия>
Удалить пакет
Для удаления, установленного пакета, используется команда:
sudo apt remove <пакет>
Удалить пакет и его конфигурационные файлы
sudo apt purge <пакет>
apt purge работает аналогично apt remove, но удаляет еще и конфигурационные файлы, относящиеся к пакету. Это означает, что если вы установили какую-нибудь программу, настроили ее, а потом удалили командой apt remove, то конфигурационный файл этой программы останется в системе. Если вы теперь установите эту программу снова, то можно будет использовать предыдущий конфигурационный файл, так как он не был удален.
apt purge не удаляет конфигурационные файлы, хранящиеся в вашей домашней директории.
Если вы удалили пакет командой apt remove, то вы можете выполнить apt purge для данного, уже удаленного пакета, чтобы «доудалить» его конфигурационные файлы.
Удалить неиспользуемые пакеты
sudo apt autoremove
Когда вы устанавливаете пакет, то часто устанавливаются дополнительные пакеты, являющиеся его зависимостями. Если теперь вы удалите этот пакет, то зависимости останутся в системе. apt autoremove удаляет эти зависимости, но только те, которые не нужны другим установленным пакетам.
Список пакетов
Команда apt list используется для вывода списка пакетов по какому-то критерию.
Вывести список установленных в системе пакетов:
apt list --installed
Вывести список пакетов, которые требуют обновления (у которых вышла новая версия):
apt list --upgradable
Вывести список всех пакетов доступных для вашей системы:
apt list --all-versions
Поиск пакетов
apt search <слово>
Данная команда выполняет поиск указанного слова в названии пакетов и в описании пакетов. Поддерживаются регулярные выражения.
Можно выполнять поиск только по названиям пакетов для этого используется опция --names-only:
apt search --names-only <слово>
Поиск пакета с использованием регулярных выражений:
apt search --names-only '^python'
Информация о пакете
apt show <пакет>
Выводит информацию о пакете. Отображается версия, размер, описание, зависимости и другая информация.
Редактирование списка репозиториев
sudo apt edit-sources
Открывает файл /etc/apt/sources.list в текстовом редакторе для редактирования, после сохранения изменений и закрытия редактора, выполняет проверку файла на предмет ошибок. В случае наличия ошибок, выводит предложение на повторное редактирование файла, чтобы исправить ошибки.
Таблица аналогов команд apt и apt-get
Команда apt | Аналог команды apt-get | Описание |
---|---|---|
apt install | apt-get install | Установить пакет |
apt remove | apt-get remove | Удалить пакет |
apt purge | apt-get purge | Удалить пакет и конфигурационные файлы |
apt autoremove | apt-get autoremove | Удалить неиспользуемые пакеты |
apt update | apt-get update | Обновить список пакетов |
apt upgrade | apt-get upgrade | Обновить пакеты |
apt full-upgrade | apt-get dist-upgrade | Обновить пакеты (удалить и установить новые, если требуется) |
apt list | Примерный аналог: dpkg-query --list | Список пакетов |
apt search | apt-cache search | Поиск пакета |
apt show | apt-cache show | Информация о пакете |
Комментарии
07:43
15:01
15:42
22:21
17:24
Данная команда только обновляет пакеты до новых версий, но никогда не удаляет и не устанавливает другие пакеты".
Хм, странно, а почему у меня эта команда автоматически установила новые пакеты?
00:32