• 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.

Удаляет пакеты из категории 2, для которых нет пакетов из категории 1.

Задачки

  1. Установите текстовый редактор emacs
  2. Установите пакет docker.io
  3. Начните установку пакета texlive, но не устанавливайте его.

Приложение apt-cache

Предназначено для выполенения действий над кешем (локальным).

search

Выполняет поиск по базе данных кеша, поиск производится по

  • Имени пакета
  • Короткому описанию пакета
  • Полному описанию пакета

–full - выводит ещё и полное описание найденых пакетов. –names-only - выводит только список наименований пакетов.

show

Выводит информацию о пакете. Установленном или доступном к установке.

stats

Выводит различную статистику по пакетам.

Задачи

  1. Нйдите имена как минимум 4 консольных веб-браузеров.
  2. Установите один из них.
  3. Зайдите на сайт http://packages.debian.org
  4. Посмотрите статистику по пакетам, локально.

Настройка списка репозиториев

Понятно, что в одном репозитории может находится только ограниченное количество ПО. Зачастую вы ходите “большего” и не только от производителя дистрибутива:

  • Проприетарное ПО: Google Chrome, различные базы данных, различные системые службы (docker), полученные по подписке.
  • Новые версии ПО. В дистрибутиве версии ПО обычно фиксируются, но вам может захотеться использовать более свежии версии какого-то ПО в рамках стабильного дистрибутива.
  • ПО может не входить в официальный дистрибутив.
  • Вы можете захотеть использовать такое же ПО, но собранное с другими настройками.

Вы можете захотеть изменить список репозиториев, с которыми работаете.

Файлы /etc/apt/sources.list

Базовым файлом для настройки списка репозиториев является /etc/apt/sources.list:

  1. Тип репозитория
    • deb - тут находятся бинарные пакеты
    • deb-src - тут находятся исходники пакетов
  2. Адрес. Может быть локальным.
  3. Название дистрибутива. stretch - 9 весрия. stable, testing, oldstable.
  4. Список наборов пакетов, которые надо брать из данного репозитория.
    • main - основной набор пакетов, который относится к свободному ПО.
    • non-free - набор пакетов, которые не предоставляют свободный доступ к исходным кодам.
    • contrib - набор пакетов, исходники которых открыты, но они зависят от пакетов, которые находятся в категории non-free.

В пункте 4 может находится произвольное количество наборов пакетов.

Помимо редактирования самого файла /etc/apt/sources.list вы также можете добавлять отдельные .list-файлы в каталог /etc/apt.sources.list.d/

Задача

Давайте поставим самую последнюю версию приложения для скачивания видео-контента из сети интернет путём установки пакета из репозитория. Приложение называется youtube-dl.

  1. Посмотрите информацию о пакете youtube-dl. => 17.05.18.1.4
  2. Откройте ресурс http://deb-multimedia.org
  3. Добавьте репозиторий deb-multimedia в список репозиториев для вашей системы.
  4. Обновите список доступных вам пакетов.
    • Для установки ключей подписей пакетов обычно используются 2 подхода: 1. apt-key 2. установка пакетов, содержащих необходимые подписи.
    • В deb-multimedia используется deb-multimedia-keyring для предоставления ключей.
  5. Поставьте пакет deb-multimedia-keyring.
  6. Обновите список доступных вам пакетов. Ошибок с ключом быть не должно.
  7. Посмотрите информацию о пакете youtube-dl =>