Advanced Packaging Tool (APT) – набор утилит для управления программными пакетами в операционных системах основанных на Debian.
APT позволяет:
- устанавливать, удалять и обновлять пакеты
- решать зависимости
- искать пакеты по заданным критериям
- просматривать подробную информацию о пакете
- манипулировать ключами от репозиториев
APT является одной из базовых программ и включена в состав Ubuntu.
Настройки APT
Все файлы настроек APT хранятся в директории /etc/apt
/etc/apt/apt.conf – основной файл настроек, используемый всеми инструментами из состава APT.
Описание всех возможных настроек и опций можно прочитать в документации к нему:
man apt.conf
apt.conf.d - директория содержащая в себе файлы конфигурации, аналогичные по синтаксису apt.conf.
При помощи этой директории можно быстро и удобно манипулировать настройками APT добавляя или удаляя подготовленные файлы с настройками.
auth.conf - файл, содержащий ключи, для авторизации в репозиториях. Например, туда добавляются логины и пароли от репозиториев к купленным в Центре приложений программам.
sources.list - файл с перечнем репозиториев.
sources.list.d - директория с файлами репозиторий, по назначению аналогичных sources.list. Каждый репозиторий описывается в отдельном файле.
Использование APT
В APT входит несколько утилит, выполняющих отдельные задачи.
apt-get - это утилита управления пакетами.
apt-get требует прав суперпользователя для своей работы.
Основные команды:
update - Обновить информацию о пакетах, содержащихся в репозиториях.
install foo - Установить пакет foo. Скачивание, установка и настройка происходят автоматически. Если для настройки пакета foo нужны дополнительные сведения, будет показан запрос к пользователю.
upgrade - Обновление пакетов, для которых в репозитории доступны новые версии.
dist-upgrade - Обновление пакетов, требующих разрешения зависимостей (установка дополнительных или удаление конфликтующих пакетов).
remove foo - Удаление пакета foo из системы.
purge foo - Удаление пакета foo и очистка системы от его конфигурационных файлов. Файлы настроек в домашних каталогах пользователей удалены не будут.
autoremove - Удаление пакета, который более не нужен в системе. Используется для очистки системы от ненужных пакетов. Факт, что пакет более не нужен, определяется следующим образом: если пакет был установлен не сам по себе, а как зависимость для другого пакета, который впоследствии был удалён, значит этот пакет тоже уже не нужен в системе.
source foo - Получение исходных текстов пакета foo.
build-dep foo - Получение зависимостей для сборки пакета foo.
Починка базы пакетов
apt-get также используется для устранения сбоев в базе пакетов вызванных нарушенными зависимостями. Разрешение зависимостей производится командой:
sudo apt-get install -f
apt-cache – утилита, позволяющая выполнять запросы к кешу APT.
Основные команды:
search - Поиск пакета по части названия или описания. Поддерживает регулярные выражения.
show - Информация о пакете: версия, размер, описание и т. п.
depends - Зависимости указанного пакета.
rdepends - Обратные зависимости пакета.
apt-key служит для добавления ключей от репозиториев в систему. Ключи защищают репозитории от возможности подделки пакета.
Основные команды:
add - Добавление ключа в базу доверенных ключей.
del - Удаление ключа из доверенных.
В завершении приведу вот такую проблемку, которая может возникнуть во время установки того или иного приложения, например - midnight commander (mc). При попытке установки
sudo apt-get install mc
система выбрасывает в консоль сообщение о невозможности найти необходимый пакет
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package mc
Одним из возможных решений может оказаться попытка обновить информацию о пакетах, находящихся в соответствующих репозиториях.
sudo apt-get update
Для успешности данного обновления ваша рабочая станция или сервер должны иметь выход в инет (если нужно настроить выход через прокси, можно заглянуть сюда) и в файле - sources.list - должны быть прописаны соответствующие репозитории.
После этого, если нет иных проблем, установка должна пройти успешно. Всем успехов!