Как добавить репозиторий в Debian

Как добавить репозиторий в Debian


Репозитории - это сетевые хранилища программного обеспечения. Они используются в дистрибутивах Linux, и в том числе в Debian для быстрой установки программного обеспечения с помощью пакетного менеджера. Более подробно о том какие репозитории бывают и зачем они нужны написано в статье Репозитории Debian.


В этой же статье мы поговорим о том как добавить репозитории в Debian различными способами. Самый простой и часто используемый вариант - настройка репозиториев вручную, с него мы и начнём.


Как добавить репозитории в Debian


Новички часто сталкиваются с проблемой, что после установки новой системы пакетный менеджер не может найти ни одного пакета. Это связано с тем, что по умолчанию основные репозитории Debian в систему не добавлены, там есть только репозитории из DVD дисков с помощью которых вы устанавливали систему. Эта проблема очень просто решается. Системные репозитории находятся в файле /etc/apt/sources.list. Давайте сначала посмотрим на содержимое этого файла по умолчанию:



sudo vi /etc/apt/sources.list



Синтаксис строки репозитория такой:


тип адрес дистрибутив ветка_1 ветка_2


Типов репозиториев может быть два. Это deb и deb-src. Первый - для бинарных файлов, второй - для файлов исходных кодов. Дистрибутив указывает кодовое имя дистрибутива, например, для Debian 10 - это buster, для девятой версии stretch. Для стабильных обновлений есть еще один репозиторий, где вместе с кодовым именем дистрибутива указывается слово updates, например: buster-updates.


Веток есть всего три, вот они:



  • main - полностью свободные пакеты, это основа дистрибутива Debian;

  • contrib - свободные пакеты, которые могут зависеть от несвободных;

  • non-free - все остальные несвободные пакеты.


Основы разобрали, теперь давайте посмотрим как добавить репозитории.


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


Именно в этот файл репозиториев Debian надо добавлять системные репозитории. Чтобы получить доступ ко всем системным пакетам надо добавить репозиторий stable, со стабильной версией Debian, и репозиторий стабильных обновлений. Вот так будут выглядеть их строчки:



deb http://deb.debian.org/debian/ buster main contrib non-free

deb http://deb.debian.org/debian/ buster-updates main contrib non-free



Просто добавьте их в конец файла /etc/apt/sources.list. Вы уже знаете какая часть за что отвечает и сможете разобраться. Если вы захотите добавить репозиторий Backports или Testing, то вам тоже следует использовать этот файл.


2. Папка /etc/apt/sources.list.d/


Сторонние репозитории тоже можно добавить в основной системный файл, но этого делать не следует, чтобы не засорять его лишними строками. Для сторонних репозиториев была придумана директория /etc/apt/sources.list.d/. В ней надо создать файл с именем репозитория и расширением .list, а затем добавить в неё репозиторий, как это делалось с основным конфигурационным файлом. Например, для браузера Chrome:



sudo vi /etc/apt/sources.list.d/google-chrome.list


deb http://dl.google.com/linux/chrome/deb/ stable main

Касательно сторонних репозиториев, есть ещё один момент. По умолчанию система не может им доверять, и для того чтобы это исправить нужно импортировать ключ репозитория. Обычно ключи можно найти на сайте, где вы нашли сам репозиторий, для того же Google Chrome ключ можно импортировать командой:



wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

После добавления репозитория, прежде чем вы сможете установить пакет, необходимо обновить списки пакетов. Для этого выполните:



sudo apt update



3. Команда apt-add-repository


Эта команда делает то же самое, что мы делали вручную на первом шаге. Она добавляет репозиторий в /etc/apt/sources.list. Отлично подходит для добавления системных репозиториев. Для сторонних репозиториев её можно использовать не всегда, поскольку она добавляет кодовое имя дистрибутива в строку репозитория, а это может её сломать, если владельцами репозитория такое явно не было задумано. Например, с помощью этой команды вы можете добавить testing репозиторий:



sudo apt-add-repository 'deb http://ftp.ru.debian.org/debian/ testing main non-free contrib'

А потом удалить, если он больше не нужен:



sudo apt-add-repository --remove 'deb http://ftp.ru.debian.org/debian/ testing main non-free contrib'

Добавить комментарий

Автору будет очень приятно получить обратную связь.

Комментариев 0