Система управления пакетами apt в Debian
- dpkg - инструмент нижнего уровня
- apt - инструмент верхнего уровня, он понимает, что помимо пакета есть также и репозиторий
APT
Изначально apt состоял из набора инструментов:
- apt-get - получить пакет из внешнего репозитория и установить его вместе с зависимостями.
- apt-cache - взаимодействие с локальным кешем информации о репозитории, в основном применяется для поиска.
- apt-
Команды apt-get
update
Скачать описание пакетов из внешнего репозитория и обновить локальный кеш.
Однако есть проблема: кеш устаревает. Т.е. перед началом работы с apt рекомендуется всегда команду.
upgrade
Пытается обновить все существующие пакеты до их версии в репозитории.
dist-upgrade
Применяется, когда обновления требуют значительных усилий: удаления большого числа пакетов и установки совершенно новых пакетов. Обычно эта ситуация случается, когда вы переходите между различными выпусками дистрибутива.
install
Позволяет поставить новый пакет или пакеты в систему. В качестве аргументов ожидает имена пакетов, которые надо поставить:
apt-get install pack1 pack2 pack3
В этом случае apt поставит:
- Все пакеты, которые нужны выбранным пакетам для работы. Например библиотеки для работы приложения.
- Может поставить “рекомендуемые” пакеты. Т.е. пакеты, которые могут расширить и улучшить функционирование приложения.
remove
Операция, обратная apt-get.
purge
Помимо удаления пакета также удаляются файлы, которые относятся к категории “конфигурация”.
clean
Очистить локальный кеш DEB-пакетов.
autoremove
При установке пакета они могут быть установлены 2 способами:
- Вы явно попросили, чтобы этот пакет был установлен.
- Пакет был установлен, чтобы удовлетворить требования по установке пакета из категории 1.
Удаляет пакеты из категории 2, для которых нет пакетов из категории 1.
Задачки
- Установите текстовый редактор emacs
- Установите пакет docker.io
- Начните установку пакета texlive, но не устанавливайте его.
Приложение apt-cache
Предназначено для выполенения действий над кешем (локальным).
search
Выполняет поиск по базе данных кеша, поиск производится по
- Имени пакета
- Короткому описанию пакета
- Полному описанию пакета
–full - выводит ещё и полное описание найденых пакетов. –names-only - выводит только список наименований пакетов.
show
Выводит информацию о пакете. Установленном или доступном к установке.
stats
Выводит различную статистику по пакетам.
Задачи
- Нйдите имена как минимум 4 консольных веб-браузеров.
- Установите один из них.
- Зайдите на сайт http://packages.debian.org
- Посмотрите статистику по пакетам, локально.
Настройка списка репозиториев
Понятно, что в одном репозитории может находится только ограниченное количество ПО. Зачастую вы ходите “большего” и не только от производителя дистрибутива:
- Проприетарное ПО: Google Chrome, различные базы данных, различные системые службы (docker), полученные по подписке.
- Новые версии ПО. В дистрибутиве версии ПО обычно фиксируются, но вам может захотеться использовать более свежии версии какого-то ПО в рамках стабильного дистрибутива.
- ПО может не входить в официальный дистрибутив.
- Вы можете захотеть использовать такое же ПО, но собранное с другими настройками.
Вы можете захотеть изменить список репозиториев, с которыми работаете.
Файлы /etc/apt/sources.list
Базовым файлом для настройки списка репозиториев является /etc/apt/sources.list
:
- Тип репозитория
- deb - тут находятся бинарные пакеты
- deb-src - тут находятся исходники пакетов
- Адрес. Может быть локальным.
- Название дистрибутива. stretch - 9 весрия. stable, testing, oldstable.
- Список наборов пакетов, которые надо брать из данного репозитория.
- main - основной набор пакетов, который относится к свободному ПО.
- non-free - набор пакетов, которые не предоставляют свободный доступ к исходным кодам.
- contrib - набор пакетов, исходники которых открыты, но они зависят от пакетов, которые находятся в категории non-free.
В пункте 4 может находится произвольное количество наборов пакетов.
Помимо редактирования самого файла /etc/apt/sources.list вы также можете добавлять отдельные .list-файлы в каталог /etc/apt.sources.list.d/
Задача
Давайте поставим самую последнюю версию приложения для скачивания видео-контента из сети интернет путём установки пакета из репозитория. Приложение называется youtube-dl.
- Посмотрите информацию о пакете youtube-dl. => 17.05.18.1.4
- Откройте ресурс http://deb-multimedia.org
- Добавьте репозиторий deb-multimedia в список репозиториев для вашей системы.
- Обновите список доступных вам пакетов.
- Для установки ключей подписей пакетов обычно используются 2 подхода: 1. apt-key 2. установка пакетов, содержащих необходимые подписи.
- В deb-multimedia используется deb-multimedia-keyring для предоставления ключей.
- Поставьте пакет deb-multimedia-keyring.
- Обновите список доступных вам пакетов. Ошибок с ключом быть не должно.
- Посмотрите информацию о пакете youtube-dl =>