Это краткое руководство о том, как настроить файл sources.list на Debian 9, под кодовым названием stretch. Debian является одним из наиболее популярных дистрибутивов Linux, и большая часть его силы исходит из ядра управления пакетами Debian — apt. Все в Debian, будь то приложение или любой другой компонент — встроен в пакет, а затем этот пакет установлен на вашей системе (либо с помощью установщика или вами).
Понимание apt и sources.list
Менеджер пакетов для Debian и его инструмент .apt, который переводиться как Advanced Package Tool и представляет собой набор инструментов для управления пакетами Debian, и поэтому приложения, установленные в вашей системе Debian .apt позволяет:
- Установку приложений
- Удаление приложений
- Обновление приложений
- Исправление сломанных пакетов и т.д.
apt способен решить проблемы зависимостей и получать требуемые пакеты из назначенных репозиториев пакетов. Он делегирует фактическую установку и удаляет пакеты для DPKG .apt в основном использует инструмент командной строки, но есть доступны инструменты GUI, которые вы можете использовать.
Файл /etc/apt/sources.list в Debian используется Apt как часть своей работы. Этот файл содержит список «sources», из которых могут быть получены пакеты. Записи в этом файле обычно имеет следующий формат.
deb http://site.example.com/debian distribution component1 component2 component3 deb-src http://site.example.com/debian distribution component1 component2 component3
Записи, приведенные выше, являются вымышленными и не должны использоваться. Ниже содержимое этого файла, которое разделить на несколько разделов:
Тип архива:
Первая запись в каждой строке — deb или deb-src представляет тип архива.
- deb означает URL, при условии, что содержатся заранее скомпилированные пакеты. Эти пакеты, установленные по умолчанию при использовании менеджеров пакетов, как apt-get или aptitude.
- deb-src указывают на источники пакетов с файлом управления Debian (.dsc) и diff.gz, содержащий изменения, необходимые для упаковки программы.
Хранилище URL:
Следующая запись в строке является URL в хранилище, куда пакеты будут загружены. Вы можете найти основной список Debian пакетов репозитория из зеркала Debian Worldwide sources.list.
Распределение:
«Распределение» может быть либо код релиза имя/псевдоним (jessie, stretch, buster, sid) или класс релиза (старое стабильное, стабильное, тестирование, нестабильный) соответственно. Если вы имеете в виду отслеживание, то класс выпуска может использовать имя класса, если вы хотите, отслеживать релизов Debian, используйте кодовое имя.
Компонент
Есть правило, три компонента, которые могут быть использованы на Debian, а именно:
- main — он содержит пакеты, которые являются частью дистрибутива Debian. Эти пакеты DFSG совместимыми.
- contrib — это пакеты DFSG совместимые, но содержит пакеты, которые не находятся в главном хранилище.
- non-free — содержит программные пакеты, которые не соответствуют с DFSG.
Полный файл sources.list на Debian 9 будет выглядеть следующим образом:
deb http://deb.debian.org/debian stretch main deb-src http://deb.debian.org/debian stretch main deb http://deb.debian.org/debian stretch-updates main deb-src http://deb.debian.org/debian stretch-updates main deb http://security.debian.org/debian-security/ stretch/updates main deb-src http://security.debian.org/debian-security/ stretch/updates main
Затем, чтобы получить contrib и non-free, добавьте contrib non-free после основных, как показано ниже:
deb http://deb.debian.org/debian stretch main contrib non-free deb-src http://deb.debian.org/debian stretch main contrib non-free deb http://deb.debian.org/debian stretch-updates main contrib non-free deb-src http://deb.debian.org/debian stretch-updates main contrib non-free deb http://security.debian.org/debian-security/ stretch/updates main contrib non-free deb-src http://security.debian.org/debian-security/ stretch/updates main contrib non-free
После того, как вы внесли изменения в файл sources.list, вы должны выполнить команду:
$ sudo apt-get update
Это обеспечит синхронизацию apt. Затем вы можете установить новые пакеты из репозитория.
Добавление пользовательских хранилищ
Это не всегда целесообразно, добавлять собственные и сторонние репозитории в файл /etc/apt/sources.list. Вместо этого вы можете создать файл в директории /etc/apt/sources.list.d. Например, чтобы установить docker на Debian 9 из его вышестоящего хранилища, вы сделаете:
$ sudo vim /etc/apt/sources.list
Добавьте следующее:
deb https://apt.dockerproject.org/repo debian-stretch main
После этого вы можете продолжить обновление apt-cache и установить пакет Docker из него. Это рекомендуемый способ добавления каких-либо других репозиториев третьих лиц.
Импорт apt ключей
При работе с apt и хранилищем sources.list, в какой-то момент вы должны импортировать ключи GPG. Обычно это делается с помощью команды apt-key, чей синтаксис следующий:
# apt-key adv --keyserver <server-address>--recv-keys <key-id>
В качестве примера, чтобы загрузить Docker ключи репозитория GPG, вы укажете следующее:
# apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
затем
# apt-get update && apt-get install docker-engine
В общем, работать с файлом sources.list относительно легко. Единственное, что вы должны быть увлечены ставит правильное распределение. Если при стабильной установке вы добавляете репозиторий sid с нестабильными пакетами, вы можете в конечном итоге нарушить вашу систему или столкнуться со многими неразрешенными зависимостями.