APT (Advanced Packaging Tool) – это утилита для установки, обновления и удаления программных пакетов в операционных системах Debian и основанных на них (Ubuntu, Linux Mint и т. п.). Способна автоматически устанавливать и настраивать программы для UNIX-подобных операционных систем как из предварительно откомпилированных пакетов, так и из исходных кодов.
Пакеты берутся из интернет-репозиториев, либо их можно установить с имеющихся носителей. Список источников пакетов хранится в файле /etc/apt/sources.list и в каталоге /etc/apt/sources.list.d/. Графические оболочки для apt позволяют легко добавлять новые и удалять ненужные источники.
Непосредственно манипуляции с пакетами выполняются при помощи программы apt-get, основные команды для работы с которой будут рассмотрены ниже.
Общая структура команды apt-get
apt-get [опции] команда пакет1 пакет2 … пакетN
Опции могут быть полезными при работе с apt-get:
-
-h — Вызов справки.
-
-d — Загрузка пакетов без установки и распаковки. Загруженные пакеты будут расположены в директории /var/cache/apt/archives.
-
-s — Имитация выполнения команды.
-
-y — С данной опцией на все вопросы автоматически предоставляется ответ Yes. При этом сами вопросы выводится не будут.
-
-f — Игнорировать результат проверки целостности пакета.
-
-u — Отображать список обновленных пакетов.
Обновление списка доступных для установки пакетов
Выполняется данное действие при помощи команды:
apt-get update
Обновление списка важно, если необходимо установить наиболее свежую и стабильную версию пакета. При выполнении этой команды, программа просматривает архивы, указанные в файле /etc/apt/sources.list.
Установка пакета
Для того, чтобы установить какой-либо пакет, используется команда:
apt-get install packagename
В результате, APT произведет поиск свежей версии указанного пакета и проверит, есть ли зависимости у него. В случае наличия зависимостей, будет выведен их список и предложение установки.
# apt-get install aee
Reading state information... Done
The following extra packages will be installed:
libx11-6 libx11-data libxau6 libxcb1 libxdmcp6
The following NEW packages will be installed:
aee libx11-6 libx11-data libxau6 libxcb1 libxdmcp6
0 upgraded, 6 newly installed, 0 to remove and 44 not upgraded.
Need to get 181 kB/1297 kB of archives.
After this operation, 4366 kB of additional disk space will be used.
Do you want to continue [Y/n]?
В случае отсутствия зависимостей, процесс установки произойдет автоматически без вывода каких-либо вопросов.
Также, в момент ввода команды для установки пакетов можно указать названия пакетов, которые необходимо удалить. Для этого в конце имени удаляемого пакета необходимо добавить дефис.
Пример установки/удаления:
# apt-get install aee htop-
Reading state information... Done
The following extra packages will be installed:
libx11-6 libx11-data libxau6 libxcb1 libxdmcp6
The following packages will be REMOVED:
htop
The following NEW packages will be installed:
aee libx11-6 libx11-data libxau6 libxcb1 libxdmcp6
0 upgraded, 6 newly installed, 1 to remove and 43 not upgraded.
Need to get 1297 kB of archives.
After this operation, 4157 kB of additional disk space will be used.
Do you want to continue [Y/n]?
Как видно из примера, пакет aee подготовлен для установки, а пакет htop – для удаления.
Переустановка пакета
При возникновении необходимости переустановки пакета (повреждение файлов, появление более новой версии), её можно выполнить при помощи следующей команды:
apt-get --reinstall install packagename
Удаление пакета
Есть два варианта удаления пакетов:
- Удаление пакета за исключением конфигурационных файлов (если есть).
Данный вариант может потребоваться в случае, если в дальнейшем планируется повторная установка этого пакета.
apt-get remove packagename
Стоит также отметить, что если удаляемый пакет имеет зависимости, то он будет удален вместе с ними.
- Полное удаление пакета
В отличие от первого способа, будут удалены все файлы, которые имеют отношение к удаляемому пакету, включая и конфигурационные.
apt-get --purge remove packagename
Пакеты, которые отмечены для полного удаления, имеют в конце своего названия символ «*»
- Удаление и установка в одной команде
Помимо этого, при удалении можно отметить перечень пакетов для установки. Для этого необходимо указать “+” в конце названия пакета.
# apt-get --purge remove aee screen+
Reading state information... Done
The following packages will be REMOVED:
aee*
The following NEW packages will be installed:
screen
0 upgraded, 1 newly installed, 1 to remove and 43 not upgraded.
Need to get 624 kB of archives.
After this operation, 975 kB of additional disk space will be used.
Do you want to continue [Y/n]?
Обновление пакетов
Перед запуском обновления рекомендуем выполнять обновление списка доступных пакетов командой:
apt-get update
Это позволит актуализировать информацию о доступных пакетах и их версиях. После выполнения этой команды можно приступить непосредственно к обновлению установленных пакетов в системе. Делается это командой:
apt-get -u upgrade
Указанный параметр -u используется для того, чтобы получить полный список пакетов, которые будут подготовлены для обновления.
Обновление версии дистрибутива
В случае появления новой версии установленного у вас дистрибутива ОС, то можно выполнить «апгрейд» целиком всей системы при помощи команды:
apt-get -u dist-upgrade