Что такое репозитории? Как их включать и отключать

LinuxUbuntuМануалыТерминалЧто такое...

В этой статье рассказывается о таких репозиториях как: Universe, Multiverse и других в Ubuntu. О том, как их включить или отключить.

Итак, вы пытаетесь следовать учебнику из интернета и устанавливаете программное обеспечение с помощью команды apt, apt-get и оно выдает ошибку:

E: Unable to locate package xyz

Вы удивлены, потому что другие пакеты должны быть доступны. Вы выполняете поиск в Интернете и сталкиваетесь с решением, для которого вам нужно включить репозиторий Universe или Multiverse для установки этого пакета.

Вы можете включить Universe и Multiverse репозитории в Ubuntu, используя следующие команды:

sudo add-apt-repository universe multiverse
sudo apt update

Вы установили Universe и Multiverse хранилище, но знаете ли вы, что это за хранилища? Как они играют роль в установке пакетов? Почему есть несколько репозиториев?

Я объясню все это более подробно.


Концепция репозиториев в Ubuntu


Итак, вы уже знаете, что для установки программного обеспечения в Ubuntu вы можете использовать команду apt. Это тот же диспетчер пакетов APT, который используется под Ubuntu Software Center. Таким образом, все программное обеспечение (кроме пакетов Snap), которое вы видите в Центре программного обеспечения, в основном от APT.

Вы когда-нибудь задумывались, откуда программа apt устанавливает программы? Как он узнает, какие пакеты доступны, а какие нет?

Apt в основном работает на хранилище. Хранилище — это не что иное, как сервер, содержащий набор программного обеспечения. Ubuntu предоставляет набор репозиториев, так что вам не придется искать в Интернете установочный файл различного программного обеспечения, которое вам нужно. Этот централизованный способ предоставления программного обеспечения является одним из основных преимуществ использования Linux.

Менеджер пакетов APT получает информацию о репозитории из файла /etc/apt/sources.list и файлов, перечисленных в каталоге /etc/apt/sources.list.d. Информация о репозитории обычно представлена ​​в следующем формате:

deb http://us.archive.ubuntu.com/ubuntu/ bionic main

Фактически, вы можете перейти по указанному выше адресу сервера и посмотреть как устроен репозиторий.

Когда вы обновляете Ubuntu с помощью команды apt update, менеджер пакетов apt получает информацию о доступных пакетах (и их версии) из репозиториев и сохраняет их в локальном кэше. Вы можете увидеть это в каталоге /var/lib/apt/lists.

Статьи по теме


Хранение этой информации локально ускоряет процесс поиска, потому что вам не нужно проходить через сеть и искать в базе данных доступных пакетов, просто чтобы проверить, доступен ли определенный пакет или нет.

Теперь вы знаете, как хранилища играют важную роль, давайте посмотрим, почему в Ubuntu есть несколько хранилищ.


Репозитории Ubuntu: Main, Universe, Multiverse, Restricted и Partner


Программное обеспечение в репозитории Ubuntu подразделяется на пять категорий: Main, Universe, Multiverse, Restricted и Partner.

Почему Ubuntu это делает? Почему бы не поместить все программное обеспечение в один репозиторий? Чтобы ответить на этот вопрос, давайте посмотрим, что это за репозитории:


Main — Основной

Когда вы устанавливаете Ubuntu, это хранилище включается по умолчанию. Основной репозиторий состоит только из FOSS (бесплатное программное обеспечение с открытым исходным кодом), которое может распространяться свободно без каких-либо ограничений.

Программное обеспечение в этом хранилище полностью поддерживается разработчиками Ubuntu. Это то, что Ubuntu будет предоставлять обновления безопасности, пока ваша система не достигнет конца срока службы.


Universe — Универсальный

Этот репозиторий также состоит из бесплатного программного обеспечения с открытым исходным кодом, но Ubuntu не гарантирует регулярные обновления безопасности для программного обеспечения в этой категории.

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


Multiverse — Мультиуниверсальный

Multiverse содержит программное обеспечение, которое не является FOSS. Из-за лицензионных и юридических проблем Ubuntu не может включить этот репозиторий по умолчанию и не может предоставлять исправления и обновления.

Вам решать, хотите ли вы использовать Multiverse репозиторий и проверить, имеете ли вы право на использование программного обеспечения.


Restricted — Ограниченный

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

Ограниченные репозитории состоят из проприетарных драйверов.


Partner — Партнерский

Этот репозиторий состоит из проприетарного программного обеспечения, упакованного Ubuntu для их партнеров. Ранее Ubuntu предоставляла Skype через этот репозиторий.


Сторонние репозитории и PPA (не предоставляются Ubuntu)


Вышеупомянутые пять репозиториев предоставлены Ubuntu. Вы также можете добавить сторонние репозитории (это зависит от вас, если вы хотите это сделать), чтобы получить доступ к большему количеству программного обеспечения или к более новой версии программного обеспечения (так как Ubuntu может предоставить старую версию того же программного обеспечения).

Статьи по теме


Например, если вы добавите репозиторий, предоставленный VirtualBox, вы можете получить последнюю версию VurtualBox. Это добавит новую запись в ваш sources.list.

Вы также можете установить дополнительное приложение, используя PPA (Personal Package Archive).

Совет. Попробуйте НЕ добавлять ничего, кроме репозиториев Ubuntu, в свой файл sources.list. Вы должны держать этот файл в идеальном состоянии, потому что, если вы испортите его, вы не сможете обновить свою систему или (иногда) даже установить новые пакеты.


Добавить Universe, Multiverse и другие репозитории


Как я упоминал ранее, только основной репозиторий включается по умолчанию при установке Ubuntu. Чтобы получить доступ к большему количеству программного обеспечения, вы можете добавить дополнительные репозитории.

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

Чтобы включить репозиторий Universe, используйте:

sudo add-apt-repository universe

Чтобы включить ограниченный репозиторий, используйте:

sudo add-apt-repository restricted

Чтобы включить хранилище Multiverse, используйте эту команду:

sudo add-apt-repository multiverse

Вы должны использовать команду sudo apt update после добавления репозитория, чтобы ваша система создала локальный кеш с информацией о пакете.

Если вы хотите удалить репозиторий, просто добавьте -r, например:

sudo add-apt-repository -r universe

Графически, перейдите на страницу Software & Updates, и вы можете включить репозитории здесь:



На вкладке Другое программное обеспечение вы найдете возможность включить репозиторий партнера.



Чтобы отключить хранилище, просто снимите флажок.


Бонусный совет: Как узнать, к какому репозиторию принадлежит пакет?


Ubuntu имеет специальный веб-сайт, который предоставляет вам информацию обо всех пакетах, доступных в архиве Ubuntu. Перейдите на веб-сайт поиска пакетов в Ubuntu — Ubuntu Packages.

Вы можете искать имя пакета в поле поиска. Вы можете выбрать, ищете ли вы конкретный выпуск Ubuntu или определенный репозиторий. Я предпочитаю использовать любой вариант в обоих полях.

Он покажет вам все соответствующие пакеты, выпуски Ubuntu и информацию о репозитории.



Как вы можете видеть выше, пакет vlc доступен в репозитории Universe для различных выпусков Ubuntu.


Заключение


Я надеюсь, что эта статья помогла вам понять концепцию репозиториев в Ubuntu.

Если у вас есть какие-либо вопросы или предложения, пожалуйста, не стесняйтесь оставлять комментарии ниже.

Источник: It’s FOSS