DataLife Engine / CentOS 7: Полное руководство по подключению сторонних репозиториев

CentOS 7: Полное руководство по подключению сторонних репозиториев

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

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


Содержание статьи

Как добавить репозиторий в CentOS вручную

Все файлы репозиториев в системе CentOS или Red Hat хранятся в каталоге /etc/yum.repos.d/, вы можете посмотреть их список с помощью такой команды:

ls /etc/yum.repos.d/

CentOS 7: Полное руководство по подключению сторонних репозиториев

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

[название_репозитория]
name=описание_репозитория
mirrorlist=ссылка_на_список зеркал
baseurl=ссылка_на_зеркало с пакетами
enabled=1

gpgcheck=1
gpgkey=файл_ключа_подписи

А теперь разберём подробнее, что за что отвечает:

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

Например, вы хотите установить пакеты из репозитория, которые доступны по URL: http://vault.centos.org/centos/7.4.1708/extras/x86_64/Packages/. Тогда конфигурация репозитория будет выглядеть вот так:

vi /etc/yum.repos.d/extras741708.repo

[extras741708]
name=Extras packages for CentOS 7.4.1708 for x86_64
baseurl=http://vault.centos.org/centos/7.4.1708/extras/x86_64/
enabled=1

CentOS 7: Полное руководство по подключению сторонних репозиториев

Если вы хотите использовать для репозитория проверку подписи по GPG-ключу, то надо передать URL, по которому этот ключ можно получить с помощью параметра gpgkey.

Но обычно вам не придётся этого всего делать. Большинство популярных репозиториев уже позаботились обо всём этом и создали свой rpm-пакет, который устанавливает все нужные им настройки и ключи. Обычно эти пакеты и саму команду для их установки можно найти на официальном сайте репозитория. Установка репозитория CentOS 7 NUX выполняется такой командой:

yum install -y http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm

CentOS 7: Полное руководство по подключению сторонних репозиториев

Утилита yum скачает и установит все необходимые конфигурационные файлы. И при следующем обращении к YUM будет загружен список пакетов этого репозитория.

Дальше вы можете устанавливать из него пакеты. Также можно проверить конфигурацию репозитория:

vi /etc/yum.repos.d/nux-dextop.repo

CentOS 7: Полное руководство по подключению сторонних репозиториев

Как видите, здесь есть два репозитория: nux-desktop и nux-desktop-testing. Первый включён по умолчанию, а второй отключён. Вы можете включить его, поставив в параметре enabled значение 1.

Настройка репозиториев CentOS

В Red Hat есть утилита subscribtion-manager, которая позволяет управлять подключёнными репозиториями, устанавливать их и менять конфигурации. Она проприетарная, поэтому из CentOS вырезана. Но настройка репозитория CentOS 7 необязательно должна выполняться вручную. Существует специальная утилита - yum-config-manager, правда, она не поставляется вместе с системой и её надо установить:

yum install yum-utils

Утилита имеет несколько опций, но мы будем использовать только некоторые из них:

Опции --add-repo надо передать адрес файла .repo с описанием репозитория, поэтому она используется очень редко, а вот для включения или отключения репозиториев утилиту использовать очень удобно. Например, отключаем репозиторий nux-dextop:

yum-config-manager --disable nux-dextop

CentOS 7: Полное руководство по подключению сторонних репозиториев

Затем включаем обратно:

yum-config-manager --enable nux-dextop

CentOS 7: Полное руководство по подключению сторонних репозиториев

Если всё прошло так, как надо, то утилита выведет новую конфигурацию, если же ничего не выведено, значит такой пакет не найден. Проверьте, правильно ли вы вводите название репозитория с помощью команды:

yum repolist

CentOS 7: Полное руководство по подключению сторонних репозиториев

Как удалить репозиторий CentOS

Чтобы удалить репозиторий CentOS из системы, достаточно удалить его файл из папки /etc/yum.repos.d или удалить пакет, которым вы его устанавливали. Например, удаляем репозиторий nux-dextop:

yum remove nux-dextop-release

CentOS 7: Полное руководство по подключению сторонних репозиториев

Если репозиторий устанавливался через пакет, то такой метод удаления предпочтительнее, так как система удалит всё, что было установлено. Если же мы добавляли репозиторий вручную, достаточно удалить файл с его настройками:

rm /etc/yum.repos.d/extras741708.repo

Теперь этого репозитория больше нет в системе.

Выводы

В этой статье мы рассмотрели, как выполняется подключение репозитория CentOS 7. Как видите, это не сложнее, чем в Ubuntu. Преимущество Ubuntu только в том, что у неё есть централизованная база таких репозиториев и поиск по ней. А для CentOS репозитории надо искать в интернете.

16-10-2025, 04:54
Вернуться назад