- Начало знакомства с репозиториями Linux
- Что такое репозиторий?
- Какие бывают репозитории?
- Процесс взаимодействия с репозиториями
- Настройка репозиториев Ubuntu
- Репозитории в Ubuntu
- Настройка репозиториев в Ubuntu
- Настройка репозиториев в GUI
- Настройка репозиториев Ubuntu PPA
- Добавление репозиториев в Ubuntu из терминала
- Как удалить репозиторий в Ubuntu
- Добавление репозитория PPA в Ubuntu
- Как удалить репозиторий PPA в Ubuntu
- Выводы
Начало знакомства с репозиториями Linux
Давайте поближе познакомимся с источниками хранения пакетов в дистрибутивах Linux. Поговорим про то, что такое репозиторий, какие они бывают и научимся их добавлять в систему.
Что такое репозиторий?
Независимо от того, как вы устанавливаете программы в дистрибутиве (через Менеджер программ или посредством терминала), всегда происходит взаимодействие с репозиториями. Это сервера в сети Интернет, где хранятся файлы пакетов и необходимая для их использования информация. Распространение пакетов в Linux децентрализовано, так как нет единого центра хранения, вы можете использовать репозитории, которые заданы разработчиками дистрибутива, можете добавлять собственные.
Какие бывают репозитории?
Исходя из последнего предложения в прошлом пункте можно говорить о том, что существует основные (говоря иначе, официально поддерживаемые) и дополнительные (подключаемые) репозитории. Дистрибутив Linux имеет обычно несколько официальных репозиториев, где хранятся пакеты в зависимости от их отличительных признаков:
- Main — репозиторий для основного и полностью бесплатного ПО.
- Restricted — репозиторий, который хранит проприетарное (не свободно распространяемое) ПО, официально поддерживаемое разработчиками (например, драйвера видеокарт NVIDIA).
- Universe — репозиторий для хранения бесплатного ПО, которое поддерживает сообщество дистрибутива.
- Multiverse — в этом репозиторий расположено проприетарное ПО, которое дистрибутив официально не поддерживает.
Дополнительные репозитории доступны для подключения пользователем как при помощи терминала, так и при помощи Менеджера программ. Например, в Ubuntu и основанных на ней системах такие репозитории называются PPA (Personal Package Archive). Это репозитории, которые заводят разработчики программ, чтобы распространять их среди потенциальных пользователей.
Процесс взаимодействия с репозиториями
Так как репозиторий это сервер, то для взаимодействия к нему нужно подключиться. Сделано это просто, так как адрес репозитория выглядит, как адрес обычного сайта. Давайте посмотрим как взаимодействовать с репозиториями на примере Linux Mint 21.
Система хранит адреса всех имеющихся репозиториев в каталоге apt, который расположен в системной папке etc.
Настройка репозиториев Ubuntu
Концепция установки программного обеспечения в Linux очень сильно отличается от Windows. Здесь тоже можно скачать программу на просторах интернета и просто запустить, ничего не устанавливая, но никто так не делает. Программы устанавливаются из надежных источников — официальных репозиториев поддерживаемых и обновляемых разработчиками дистрибутива или сообществом пользователей. Если в двух словах, то репозитории — это такие большие сборники программ, в котором они хранятся в специальном формате и могут быть автоматически скачены и установлены менеджером пакетов.
В одной из своих предыдущих статей я рассмотрел список полезных репозиториев для Ubuntu. В этой статье мы рассмотрим репозитории в Ubuntu более глобально, будет рассмотрена настройка репозиториев Ubuntu, поговорим какими они бывают, где хранятся, как добавлять и удалять репозитории.
Репозитории в Ubuntu
В основном репозитории Ubuntu можно поделить на два типа — официальные и репозитории сторонних разработчиков. В официальных репозиториях находятся только стабильные программы, причем их версии не будут обновляться, они могут получать только обновления безопасности. Сторонние репозитории ubuntu могут создаваться кем угодно и их автор может обновлять и добавлять программное обеспечение в репозиторий когда нужно. PPA репозитории Ubuntu созданы с целью упростить процесс создания сторонних репозиториев.
Каждый репозиторий поддерживает несколько веток. Первая группа веток — это версия дистрибутива. Для каждой версии дистрибутива — отдельное программное обеспечение.
Вторая группа веток более интересная. Дело в том что в Ubuntu есть несколько веток для различного рода программного обеспечения:
- Main — основная ветка — стабильное официально поддерживаемое Canonical ПО
- Restricted — официально поддерживаемое ПО распространяемое не под лицензией GPL
- Universe — программы, поддерживаемые сообществом Ubuntu
- Multiverse — ветка проприетарного программного обеспечения
Такой структуры придерживаются официальные репозитории, сторонние ppa могут же иметь другую структуру или просто ветку main.
Также репозитории можно поделить еще на два типа — репозитории с бинарными файлами — готовыми собранными пакетами, и репозитории исходного кода, откуда можно скачать исходный код программ и собрать его на своем компьютере.
Настройка репозиториев в Ubuntu
Настройки репозиториев Ubuntu находятся в нескольких файлах в каталоге /etc/apt.
Все официальные репозитории записываются в файл репозиториев Ubuntu — /etc/apt/sources.list. Для каждого PPA репозитория создается отдельный файл в каталоге /etc/apt/sources.list.d/*
Таким образом, вы уже знаете как примитивным способом посмотреть список репозиториев в Ubuntu. По сути, уже можно открыть этот файл и добавить репозиторий Ubuntu прямо туда в конец файла, но для таких действий в системе есть специальные инструменты и далее мы их рассмотрим.
Настройка репозиториев в GUI
Управление репозиториями можно осуществлять с помощью утилиты настроек системы. Запустите Настройки системы, затем откройте Программы и обновления или сразу же запустите Программы и обновления из меню Dash:
На первой вкладке вы можете включить или отключить ветки официальных репозиториев (main, restricted . ), а также выбрать ближайшее к вам зеркало:
Для добавления репозитория в Ubuntu перейдите на вкладку другое ПО на этой вкладке вы можете видеть весь список репозиториев Ubuntu которые были подключены к системе:
Чтобы иметь доступ к дополнительным программам рекомендуется подключить сторонний репозиторий партнеров Canonical. Для этого просто поставьте напротив него галочку.
Для добавления репозитория Ubuntu нажмите кнопку Добавить:
Здесь в единственном поле нужно ввести apt строку репозитория и нажать кнопку добавить источник.
Apt строка репозитория имеет такой синтаксис:
deb http://адрес_репозитория версия_дистрибутива ветки
deb http://ua.archive.ubuntu.com/ubuntu/ xenial main restricted
deb https://apt-mo.trafficmanager.net/repos/dotnet/ trusty main
Первая строка — официальный репозиторий, вторая — PPA репозиторий ubuntu. Как видите, выглядят они одинаково. С версией дистрибутива все понятно, это кодовое имя, с веткой тоже — это main. А вот где брать адрес? Это уже ваше дело, вы можете искать репозитории где угодно, на форумах, в поисковых системах или в нашей статье, где собран список лучших репозиториев.
Установка репозитория Ubuntu завершена и он появился в списке. Чтобы его отключить достаточно просто снять галочку. А чтобы удалить репозиторий Ubuntu нажмите кнопку удалить:
Для сторонних репозиториев необходимо импортировать GPG ключ для правильной работы в системе, если ключ не добавить, то во время обновления репозиториев Ubuntu apt выдаст ошибку проверки подписи. Это делается, чтобы никто не мог подменить пакеты и вы не установили вирусов. Перейдите на вкладку Аутентификация, затем выберите импортировать ключ из файла:
Как правило, в описании репозитория, если для него требуется ключ, указана ссылка где его можно скачать. Скачать ключ можно с помощью браузера, или консольной утилитой wget, например:
Удалять ключи также можно кнопкой удалить:
Если вы запутались и не знаете как вернуть состояние по умолчанию можно просто нажать кнопку восстановить чтобы восстановить репозитории Ubuntu:
Если были добавлены новые репозитории, при выходе программа предложит выполнить обновление репозиториев Ubuntu, это нужно чтобы загрузить списки пакетов из только что подключенных источников. Также обновление можно выполнить через терминал, но об этом ниже.
Настройка репозиториев Ubuntu PPA
PPA репозитории Ubuntu находятся на сайте, созданном Canonical — launchpad.net. Ubuntu способна автоматически различать, находить apt строку и скачивать GPG ключи для таких репозиториев. Достаточно указать адрес ppa вместо apt сроки при добавлении репозитория в Ubuntu, например:
На самом деле PPA репозитории такие, же как и обычные репозитории. Если вы хотите добавить репозиторий вручную, вы можете узнать apt строку и ключ, раскрыв спойлер Technical details about this PPA на странице описания репозитория:
Теперь его можно добавить в систему, так же как описано выше.
Добавление репозиториев в Ubuntu из терминала
Во многих инструкциях мы видим команды для подключения репозитория в Ubuntu через терминал. Действительно, это немного удобнее чем запускать утилиту, загружать ключи и делать все мышкой. Чтобы добавить репозиторий Ubuntu через терминал используйте команду: apt-add-repository:
sudo apt-add-repository «deb http://ppa.launchpad.net/shutter/ppa/ubuntu wily main»
В кавычках указана apt строка репозитория. Также можно просто добавить строчку в /etc/apt/sources.list:
echo «deb http://ppa.launchpad.net/shutter/ppa/ubuntu wily main» >> /etc/apt/sources.list
Для добавления ключей безопасности GPG существует команда apt-key. Вы можете добавить ключ из файла, или скачать ключ с помощью curl и перенаправить ее вывод и apt-key:
curl -L http://debian.datastax.com/debian/repo_key | sudo apt-key add
Добавить репозиторий в Ubuntu через терминал намного проще чем в графическом интерфейсе.
Как удалить репозиторий в Ubuntu
Удалить репозиторий Ubuntu через терминал можно той же командой с опцией —remove:
sudo apt-add-repository —remove «deb http://ppa.launchpad.net/shutter/ppa/ubuntu wily main»
Или же просто закомментировать deb строку в файле /etc/apt/sources.list или в одном из файлов /etc/apt/sources.list.d/*.
Добавление репозитория PPA в Ubuntu
Добавить репозиторий PPA в Ubuntu можно той же командой. Как я уже говорил система автоматически распознает репозиторий и скачает нужные ключи. Формат записи такой:
sudo apt-add-repository ppa:репозиторий/ppa
sudo apt-add-repository ppa:shutter/ppa
Как удалить репозиторий PPA в Ubuntu
Удалить репозиторий в Ubuntu можно такой же командой, как и в предыдущем примере:
sudo add-apt-repository —remove ppa:репозиторий/ppa
Полностью удалить PPA из системы можно командой:
sudo ppa-purge ppa:репозиторий/ppa
Возможно, утилиту ppa-pure необходимо будет установить командой:
sudo apt-get install ppa-purge
После настройки репозиториев Ubuntu не забывайте обновить списки пакетов, чтобы скачать метаданные новых репозиториев на компьютер и apt смогла с ними работать. Для этого выполните команду:
Выводы
Вот и все, настройка репозиториев в Ubuntu завершена. Вы узнали все возможные методы и теперь любая команда подключения репозитория Ubuntu не вызовет у вас недоумения. Теперь вы знаете все что нужно чтобы правильно использовать репозитории в вашей системе. Только будьте осторожны, не переусердствуйте со сторонними репозиториями из-за них могут возникнуть проблемы с обновлением. И вообще, это не очень хороший тон, иметь в системе много репозиториев. Если у вас остались вопросы, задавайте в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.