Как добавить репозиторий в 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’
Выводы
В этой небольшой статье мы рассмотрели добавление репозиториев Debian на примере операционной системы Debian 10. Как видите, для этого есть несколько способов и какой из них вы будете использовать зависит от вас. А как добавляете репозитории вы? Напишите в комментариях!
Как добавить репозиторий в Debian
APT проверяет работоспособность всех пакетов, зависимости пакета перед его установкой. APT извлекает пакеты из одного или нескольких репозиториев. Репозиторий (источник пакета) — это в основном сетевой сервер. Термин «пакет» относится к отдельному файлу с расширением .deb, который содержит все или часть приложения. Обычная установка идет с настроенными репозиториями по умолчанию, но они содержат только несколько пакетов из океана доступного бесплатного программного обеспечения.
В этом руководстве мы узнаем, как добавить репозиторий пакетов в Debian .
1. Добавление репозитория из терминала
Просто веселое видео для отвлечения и расслабления в течение 2 минут
Вы можете добавить репозиторий пакетов в Debian двумя способами из оболочки: вручную или с помощью apt . Информация о репозитории пакетов хранится в файле с именем /etc/apt/sources.list . А также может храниться в любом файле внутри каталога /etc/apt/sources.list.d/ .
Добавить репозиторий вручную
Чтобы добавить репозиторий вручную, вам необходимо отредактировать файл /etc/apt/sources.list. Записи в этом файле имеют синтаксис:
Тип архива — первое слово в строке может быть deb или deb-src . Deb указывает, что архив содержит пакеты .deb, а deb-src указывает, что в архиве есть пакеты с исходным кодом.
URL-адрес репозитория — эта запись представляет собой URL-адрес репозитория, из которого должен быть загружен пакет.
Распространение — это может быть кодовое название выпуска, псевдоним (например, «яблочко») или класс выпуска (старый стабильный, стабильный, тестируемый, нестабильный) соответственно.
Компонент — это может быть основной, дополнительный или платный. main Содержит DFSG совместимый пакет часть дистрибутива Debian. contrib — совместимый пакет DFSG , который имеет зависимостей не в main . non-free Содержит пакеты , которые не соответствуют DFSG.
Например, давайте добавим репозиторий VirtualBox в Debian Bullseye. Сначала откройте файл /etc/apt/sources.list для редактирования.
Теперь вы можете добавить в файл строку репозитория пакетов.
Ниже приведен файл /etc/apt/sources.list из моей системы Debian 11, он содержит часть официального репозитория Debian, который был добавлен во время установки Debian, и вы также можете увидеть недавно добавленный репозиторий.

Вместо добавления в файл /etc/apt/sources.list вы также можете создать собственный исходный файл с расширением .list внутри каталога /etc/apt/sources.list.d/ и добавить репозиторий в этот файл. Это тоже работает.
После добавления репозитория apt обязательно обновите индекс пакета:
Добавить репозиторий с помощью add-apt-repository
Add-apt-repository — это сценарий Python, используемый для добавления обычного репозитория APT или PPA. Эта утилита включена в software-properties-common пакет.
Основной синтаксис add-apt-repository команды следующий:
Например, вам нужно установить Docker из официального репозитория. Сначала обновите индекс пакета и установите все зависимости.
Импортируйте GPG-ключ репозитория:
Теперь добавьте репозиторий Docker с помощью add-apt-repository :
Это добавит информацию о репозитории в файл etc / apt / sources.list.
Затем обновите индекс пакета, а затем установите пакет докеров.
Чтобы удалить включенный репозиторий, введите:
Add-apt-repository также позволяет добавлять репозиторий PPA . PPA расшифровывается как Personal Package Archive, который позволяет разработчикам создавать свои собственные репозитории.
Например, чтобы добавить репозиторий PPA для libreoffice, введите:
После добавления PPA вы можете установить соответствующий пакет с помощью apt.
2. Добавление репозитория из графического интерфейса.
В качестве альтернативы вы можете добавить репозиторий пакетов из Debian Gui. Я использую Debian 11 в среде рабочего стола Gnome.
На рабочем столе найдите «Программное обеспечение и обновления»

В «Программное обеспечение и обновления» выберите вторую вкладку «Другое программное обеспечение».

Нажмите кнопку «Добавить», затем добавьте строку APT и нажмите кнопку «Добавить источник», чтобы обновить /etc/apt/sources.list файл.

Вывод
В этом руководстве мы узнали, как добавить репозиторий пакетов в Debian. спасибо за чтение, дайте нам знать свой отзыв в разделе комментариев.
Configuring Apt Sources
Apt downloads packages from one or more software repositories (sources) and installs them onto your computer.
A repository is generally a network server, such as the official DebianStable repository. Local directories or CD/DVD are also accepted.
- What software packages are available for download
- What versions of packages are available
- Who packages the software
Commonly used package sources
StableProposedUpdates: official Debian repository for upcoming point releases (security and important bug fixes every
Editing software sources
Precautions
Being able to change the repositories used by your package management system is a powerful feature but this power comes with some responsibility. Users are cautioned that it is possible to break your system (in a way that could be difficult or impossible to cleanly fix) by adding third-party repositories, or repositories for a Debian version that does not match your current version — these repository create a risk of conflicting package versions, creating what’s sometimes called a "Franken-Debian" system. The whole concept behind a Debian stable release is that the Debian developers have picked a set of software and their versions that function nicely together. While this software is patched to fix security issues, the software is frequently not the latest version. It takes some experience to know how the repos may be changed without risk of breaking your system. Users of all levels are advised to change repos cautiously.
Using a graphical program
Using a text editor
The main Apt sources configuration file is at /etc/apt/sources.list. You can edit this files (as root) using your favorite text editor.
To add custom sources, creating separate files under /etc/apt/sources.list.d/ is preferred.
sources.list format
The entries in this file normally follow this format:
Archive type
The first word on each line, deb or deb-src, indicates the type of archive. Deb indicates that the archive contains binary packages (deb), the pre-compiled packages that we normally use. Deb-src indicates source packages, which are the original program sources plus the Debian control file (.dsc) and the diff.gz containing the changes needed for packaging the program.
Repository URL
The next entry on the line is a URL to the repository that you want to download the packages from. The main list of Debian repository mirrors is located here.
Distribution
The ‘distribution’ can be either the release code name / alias ( stretch, buster, bullseye, bookworm, sid) or the release class (oldoldstable, oldstable, stable, testing, unstable) respectively. If you mean to be tracking a release class then use the class name, if you want to track a Debian point release, use the code name. Avoid using stable in your sources.list as that results in nasty surprises and broken systems when the next release is made; upgrading to a new release should be a deliberate, careful action and editing a file once every two years is not a burden.
For example, if you always want to help test the testing release, use ‘testing’. If you are tracking bookworm and want to stay with it from testing to end of life, use ‘bookworm’.
Component
main consists of DFSG-compliant packages, which do not rely on software outside this area to operate. These are the only packages considered part of the Debian distribution.
contrib packages contain DFSG-compliant software, but have dependencies not in main (possibly packaged for Debian in non-free).
non-free contains software that does not comply with the DFSG.
The Debian project has taken the decision in 2022-10 to create a new repository component non-free-firmware, and include its content on installation media for the upcoming Debian release bookworm to make things easier for our users.
The information below still applies to the oldstable and stable releases (a.k.a. buster and bullseye), but might be outdated for weekly and nightly media of testing published in the coming weeks, with the situation changing rapidly while the decision is being implemented.
Please bear with us until the situation has settled and can be documented in Firmware. And if you want to help out this transition, feel free to follow the mailing list thread.
Example to Bookworm (next release and current in testing):
Example sources.list
Below is an example of a sources.list for Debian 11/Bullseye.
If you need the contrib and non-free components, add contrib non-free after main. For example, for Debian 11/Bullseye:
If you need the Backports, contrib, and non-free components, add bullseye-backports lines. For example, for Debian 11/Bullseye:
If you need Unstable, then change the distribution to unstable. Note that Updates and Security is not used since Unstable is a rolling release consisting of the latest packages. That is, unstable main will be the only entry in sources.list.
You can instead use https://. in all of the above lines to use the repositories over encrypted HTTPS connections if the according mirror supports HTTPS. (Users of Debian 9/Stretch or older releases will need to install the apt-transport-https package first.)
You can use a GNOME tool to edit your sources.list file. Access it through Menu → System → Administration → Software Sources.
Using Tor with Apt
Apt can retrieve and download updates through Tor. For this to work you need to install the tor and apt-transport-tor packages. You can then use the official onion services provided by Debian.
Here is an example sources.list using the onion services for Debian 11/Bullseye:
CD-ROM
If you’d rather use your CD-ROM for installing packages or updating your system automatically with APT, you can put it in your /etc/apt/sources.list. To do so, you can use the apt-cdrom program like this:
with the Debian CD-ROM in the drive.
You can use -d for the directory of the CD-ROM mount point or add a non-CD mount point (i.e. a USB keydrive).
Name Resolution
On occasion name resolution can break. For example, below is from a S/390x Port running in a QEMU Chroot:
You can temporarily work around it by obtaining the IP address from another machine, and then using the IP address rather than the URI:
Debug Symbol Packages
To debug a crash you often need the related debug symbol files. For most Debian packages these are in dbgsym packages. These are available from a separate archive.
Sorry, you have been blocked
This website is using a security service to protect itself from online attacks. The action you just performed triggered the security solution. There are several actions that could trigger this block including submitting a certain word or phrase, a SQL command or malformed data.
What can I do to resolve this?
You can email the site owner to let them know you were blocked. Please include what you were doing when this page came up and the Cloudflare Ray ID found at the bottom of this page.
Cloudflare Ray ID: 7a24c7997b492d67 • Your IP: Click to reveal 88.135.219.175 • Performance & security by Cloudflare