Подключить epel centos 8

Обновлено: 07.07.2024

Для любого сервера необходимо иметь возможность оперативно получить актуальное свежее программное обеспечение. Установка репозиториев epel, rpmforge и др. repo для CentOS решает вопрос получения rpm пакетов для последующей настройки и обновления функционала сервера. Так что уделим внимание этому вопросу и разберемся в тонкостях, которые тут присутствуют, как и в любом другом вопросе.

Репозитории в CentOS

Для начала давайте поясним, что такое репозитории и для чего они нужны. Вот что говорит wikipedia на этот счет:

Репозито́рий, хранилище — место, где хранятся и поддерживаются какие-либо данные. Чаще всего данные в репозитории хранятся в виде файлов, доступных для дальнейшего распространения по сети.

Существуют репозитории для хранения программ, написанных на одном языке (например, CPAN для Perl) или предназначенных для одной платформы. Многие современные операционные системы, такие как OpenSolaris, FreeBSD и большинство дистрибутивов Linux, имеют официальные репозитории, но также позволяют устанавливать пакеты из других мест. Большинство репозиториев бесплатны, однако некоторые компании предоставляют доступ к собственным репозиториям за платную подписку.

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

В нашем случае репозиторий — хранилище пакетов для операционной системы CentOS. Существуют repository от разработчика системы, их называют официальные. Набор rpm пакетов там обычно ограничен и версии не самые свежие. Для установки дополнительного софта используют сторонние репозитории. Их поддерживать могут как другие компании, так и группы энтузиастов.

Управлением пакетами и репозиториями в CentOS занимается утилита yum. Ее конфигурационный файл находится в /etc/yum.conf. Этот файл содержит секцию [main], в которой указываются глобальные настройки программы. Так же он может содержать одну или несколько секций [repository], в которой хранятся настройки репозиториев. Тем не менее, рекомендуется информацию о репозиториях хранить в каталоге /etc/yum.repos.d/ в специальных файлах .repo.

Минимальное содержание файла .repo следующее:

Другие ползные параметры, которые могут быть указаны в repo файле:

enabledпринимает значение 1 или 0, 1 — репозиторий подключен, 0 — отключен
asyncуправляет загрузкой пакетов, auto — использует при возможности параллельную загрузку, on — использует только параллельную загрузку, off — параллельная загрузка отключена
mirrorlistвместо ссылки на конкретный адрес репозитория может быть указана ссылка на список адресов, из которых при установке будет выбран наиболее подходящий
gpgcheckпринимает значение 1 или 0, 1- осуществлять проверку GPG подписи пакета из репозитория, 0 — не проверять
gpgkeyссылка на GPG ключ репозитория

Вот содержание стандартного файла с репозиториями CentOS /etc/yum.repos.d/CentOS-Base.repo:

Подключение репозиториев в CentOS

Добавить репозиторий в CentOS можно тремя разными способами:

  1. Добавив секцию [repository] в файл /etc/yum.conf
  2. Создав .repo файл в директории /etc/yum.repos.d
  3. Установив rpm пакет с информацией о репозитории

Как уже было сказано ранее, первый способ использовать не рекомендуется самими разработчиками. Наиболее быстрый и удобный третий способ. Если rpm пакета для добавления репозитория не существует, то используется вручную второй способ.

Установка epel repo в CentOS

Полностью epel репозиторий называется так — Extra Packages for Enterprise Linux. Это хранилище пакетов, созданное группой специалистов операционной системы Fedora. Пакеты из epel репозитория никогда не конфликтуют и не переустанавливают базовые пакеты RHEL. Поддерживаются пакеты для следующих операционных систем:

  • Red Hat Enterprise Linux (RHEL)
  • CentOS
  • Scientific Linux (SL)
  • Oracle Linux (OL)

Установить репозиторий epel в CentOS проще всего, так как epel-release package включен в стандартный Extras repository CentOS, который доступен по-умолчанию. На сегодняшний день это самый популярный неофициальный репозиторий для CentOS.

Установка репозитория epel в centos:

установка epel centos

Теперь если проверим папку /etc/yum.repos.d, увидим там файл epel.repo, в котором будет информация о новом подключенном репозитории.

Подключение rpmforge repo в CentOS

  • Servers (eg. monitoring, troubleshooting, management)
  • Desktops (eg. office, leisure, multi-media)
  • Development (eg. perl, python, ruby libraries)

Установка rpmforge на centos:

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

установка rpmforge centos

Проверяем директорию /etc/yum.repos.d:

Все в порядке rpmforge репозиторий установлен.

Установка remi repo в CentOS

Les RPM de Remi repository поддерживает последние версии MySQL и PHP (бэкпорты федоровских rpm). Пакеты этого репозитория необходимо использовать с осторожностью, так как они заменяют базовые пакеты.

Установка репозитория remi в centos:

установка remi в centos

Обновление репозиториев с помощью yum

После добавления новых репозиториев в систему, никаких дополнительных действий производить не требуется, в отличие от debian based систем, где после добавления репозиториев, необходимо обновить кэш доступных пакетов с помощью команды apt-get update. Если выполнить команду yum update, то начнется сразу обновление пакетов. То есть смысл команды совсем другой. В CentOS кэш пакетов обновляется каждый раз, когда производится какое-то действие с помощью yum. Например, при выводе списка доступных репозиториев, обновляется список пакетов.

Показать список активных репозиториев в centos

yum repolist

repo idid репозитория
reponameимя репозитория
statusколичество пакетов

Удалить репозиторий в CentOS

Для того, чтобы удалить репозиторий из системы, необходимо узнать его id с помощью команды yum repolist. Об этом я писал в предыдущем разделе. Затем с помощью утилиты yum-config-manager, которая входит в пакет yum-utils выполним удаление:

Если получаете такую ошибку, то установите пакет yum-utils:

Удаление репозитория в centos:

Теперь проверяем список активных репозиториев:

yum-config-manager – disable repo

Удаленного репозитория remi-safe нет. Значит все в порядке, отключение репозитория прошло успешно.

Для того, чтобы обновить кэш yum после изменения репозиториев, можно воспользоваться следующими командами:

Yandex mirror для CentOS

На зеркале CentOS можно скачать дистрибутивы всех актуальных на текущий момент версий, а это версии 5, 6 и 7. Зеркало можно использовать в качестве источников стандартных репозиториев системы — base, updates, extras, centosplus.

date

13.12.2019

directory

CentOS, Linux

comments

комментария 4

В стандартных (официальных) репозиториях RHEL/CentOS доступно лишь небольшое количество базовых пакетов, причем в них иногда предлагаются не самые новые версии программ. Однако вы можете использовать сторонние публичные или частные репозитории для установки новых версий программ в Red Hat Enterprise Linux, CentOS, Oracle Linux и Scientific Linux. Из наиболее распространённых сторонних репозиториев можно выделить Remi и EPEL. В этой статье мы рассмотрим особенности подключения, управления и использования дополнительных репозиториев с помощью пакетного менеджера YUM в CentOS 7.

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

Подключение репозиториев EPEL и Remi в CentOS

При установке операционной системы (в нашем примере это CentOS 7), по умолчанию устанавливаются базовые репозитории. Посмотреть их список можно следующей командой:

yum repolist

Как можно увидеть на скриншоте в системе установлено 3 репозитория — base, extras, updates.

Этих основных репозиториев хватит, чтобы начать вашу работу по установке базового ПО и установке дополнительных репозиториев.

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

Пожалуй, самый популярный на данный момент репозиторий — это EPEL.

Репозиторий EPEL в CentOS 7 устанавливается очень просто (в отличии от CentOS 6) через RPM пакет (это самый простой способ добавления репозитория):

yum install epel-release

yum install epel-release

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

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

Remi — еще один популярный репозиторий для CentOS. Содержит в себе самые новейшие версии php, а так же mysql. Был создан человеком по имени Remi Collet. Чтобы использовать данный репозиторий, в системе должен быть установлен Epel. Обратите внимание, что могут быть конфликты пакетов из этого репозитория с пакетами из базовых репозиториев.

Если RPM пакета для нужного репозитория нет, вы можете добавить его, вручную создав конфигурационный .repo файл в каталоге /etc/yum.repos.d (см. следующий раздел).

Чтобы понять из каких репозиториев установлены конкретные пакеты в вашей систему, вы можете вывести полный список пакетов:

yum list installed

Как вы видите, для каждого пакета указано из какого репозитория он установлен (на скрипншоте есть репозитории base, update, epel и anaconda).

yum list installed

Вы можете вывести список пакетов, доступных для установки в конкретном репозитории:

yum repo-pkgs epel list

Конфигурационные файлы репозиториев (*.repo)

Все конфигурационные файлы репозиториев расположены в директории /etc/yum.repos.d/. В конфигурационных файл *.repo. Типовой конфигурационный файл репозитория содержит следующие параметры:

В минимальном случае repo файл может выглядеть так:

Например, после подключения репозитория REMII, в директории репозиториев появится несколько конфигурационных файлов Remi (remi-*.repo).

/etc/yum.repos.d

Как вы видите, Remi имеет отдельный конфигурационный файл для каждой версии php. Вам нужно включить нужную вам версию в конфигурационном файле, например у меня на сервере будет стоять версия php 7.3, для этого я включил именно этот репозиторий (в файле remi-php73.repo указал enabled=1):

enabled=1 включить repository в centos

Вы можете подключит репозиторий вручную, для этого нужно создать конфигурационный файл репозитория в директории /etc/yum.repos.d/. Подключим репозиторий MaruaDB.

Добавим в него данные, которое нам предоставляет разработчик пакета MariaDB:

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

Чтобы отключить один из подключенных репозиториев, достаточно в его конфигурационном файле указать enabled=0 .

remi repository enabled=0

После этого, нужно сбросить кэш в yum:

И пересоздать его заново:

Теперь при установке или обновлении пакетов, репозиторий remi-php73 использоваться не будет.

Если вы хотите, чтобы определенный репозиторий не использовался только при выполнении текущей команды обновления/установки пакета, можно отключить репозиторий в рамках выполнения запроса yum, например:

yum update —disablerepo=epel

В этом примере мы отключили репозиторий EPEL и выполнили обновление пакетов в системе.

Вы можете временно отключить всех репозитории, кроме определенных. Например, чтобы установить обновления только для пакетов из репозитория MariaDB:

yum update --disablerepo "*" --enablerepo=mariadb

Для удаления репозиториев используется утилита yum-config-manager, которая входит в набор yum-utils.

yum -y install yum-utils

Удалите репозиторий, например remi:

yum-config-manager --disable remi

Для полного удаления репозиторий нужно удалить его конфигурационные файлы и обновить кэш yum.

Проверка обновлений в нужном репозитории

Мы можем проверить, есть ли обновления пакетов в нужном репозитории, немного измегим команду из прошлого пункта:

yum check-update --disablerepo "*" --enablerepo=mariadb

yum check-update --disablerepo -enablerepo

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

Другие популярные репозитории пакетов для CentOS

MariaDB – как можно догадаться из названия, это репозиторий в котором содержатся пакеты MariaDB. Репозиторий cоздан разработчиками MariaDB, поддерживается и обновляется постоянно.

Чтобы установить данный репозиторий в систему, нужно создать для него repo файл с содержимым:

И подключение данного репозитория, похоже на подключение репозитория MariaDB. Создаем создаем .repo файл и помещаем туда данную информацию:

Данного списка репозиториев хватит для настройки так называемого LAMP, с установленным в качестве front-end сервера nginx-ом.

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

Webtatic – данный репозиторий поддерживается ограниченным количеством специалистов, в основном это Andy Thompson, в нем содержаться пакеты относящиеся к php, но менее популярный, чем Remi, и я догадываюсь почему. На момент написания статьи, последняя версия php в этом репозитории была 7.2.

yum repo-pkgs webtatic list | grep php7

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

MySQL – ну и пожалуй я напомню о mysql. Данный репозиторий не поставил вместе с популярными, так как на мой взгляд mysql как сервер БД отошел на второй план и в основном на сервера устанавливается MariaDB. НО если кто-то желает установить именно mysql (например, для Bitrix нужен именно mysql), вы можеже подключить этот репозиторий себе. Например если хотите подключить mysql 5.7:

И устанавливаем его:

rpm -Uvh mysql57-community-release-el7-9.noarch.rpm

После установки, у меня появилась возможность установить mysql:

add mysql repository centos

В этой статье мы показали особенности управления репозиториями в CentOS и рассмотрели полезные репозитории.

Хотя с момента выхода Red Hat Enterprise Linux 8 прошло некоторое время, соответствующая версия EPEL репозитория (Extra Packages for Enterprise Linux) была выпущена всего несколько дней назад. Репозиторий содержит пакеты, которые не предоставлены официальными источниками программного обеспечения, например extundelete, утилита для восстановления удаленных файлов из файловых систем ext3/4. До настоящего времени решением для установки этого программного обеспечения было создание его из исходного кода или использование предыдущей версии EPEL (не идеальной). В этом статье мы рассмотрим, как добавить EPEL8 в RHEL 8/CentOS 8.

Включить EPEL8 репозиторий в RHEL 8 / CentOS 8 очень просто: все, что нам нужно сделать, это загрузить и установить пакет конфигурации, который содержит файлы репозитория. Файл доступен для скачивания по следующему адресу . Ради этой статьи я буду предполагать, что мы работаем из интерфейса командной строки. Нам не нужно скачивать пакет для его установки : мы можем выполнить операцию непосредственно с помощью dnf менеджера пакетов:


Если мы подтвердим, набрав «y» и нажав Enter, пакет будет установлен. Он содержит файлы, необходимые для настройки дополнительных источников программного обеспечения. Чтобы увидеть, где были установлены эти файлы, мы можем запустить следующую команду:


Команда, если она вызывается, как указано выше, отображает список всех репозиториев, включенных в систему (ее также можно использовать для отображения только отключенных или всех репозиториев, существующих в системе). Предоставляя -v опцию (сокращение от --verbose ), мы можем получить более подробный отчет:

Как видно из вывода команды, хранилище было правильно активировано, оно является первым в списке.

После того, как мы установим и включим EPEL репозиторий, мы сможем воспользоваться дополнительными пакетами программного обеспечения, которые он предоставляет, устанавливая их как обычно. Но что, если мы хотим знать все пакеты, содержащиеся в хранилище? Еще раз, все, что мы должны сделать, это использовать dnf предоставление repo_id репозитория, который мы хотим проверить, «epel» в этом случае:

Вот выдержка из результата команды:


Как мы можем видеть из выходных данных команды, много программного обеспечения, обычно предоставляемого EPEL каналом, все еще отсутствует в репозитории, как, например, пакеты, необходимые для установки альтернативных сред рабочего стола, таких как Xfce4 или утилиты, такие как phpMyAdmin. Эти пакеты, вероятно, будут предоставлены в будущем.

Сразу после установки виртуальной машины с графическим интерфейсом на VirtualBox размер экрана обычно небольшой и не работают некоторые функции. Например, не работает буфер обмена между гостевым и основным компьютерами. Чтобы улучшить внешний вид и функциональность виртуальной машины, VirtualBox предоставляет набор программных пакетов и драйверов, известных как гостевые дополнения VirtualBox. Они распространяются в виде ISO-образа с именем VboxGuestAdditions.iso, который входит в комплект VirtualBox. Этот образ можно смонтировать в гостевую систему, после чего установить гостевые дополнения.

Кстати, в некоторых дистрибутивах можно установить гостевые дополнения VirtualBox прямо из стандартных репозиториев. Но в CentOS это не наш случай.

Гостевые дополнения VirtualBox включают перечисленные ниже функции:

  • Улучшено графическое отображение/внешний вид.
  • Интеграция указателя мыши между хостом и гостевой машиной.
  • Общие папки между хостом и гостевой системой.
  • Функции копирования и вставки и вырезания и вставки между хостом и гостевой системой.

Гостевые дополнения VirtualBox можно установить как в системах Linux, так и в Windows. В этом руководстве мы проведём вас через установку гостевых дополнений VirtualBox на CentOS 8.

Шаг 1. Установка EPEL на CentOS 8

Для начала начните с установки репозитория EPEL, сокращённо Extra Packages for Enterprise Linux, который представляет собой репозиторий, который содержит дополнительные пакеты программного обеспечения с открытым исходным кодом для разновидностей RedHat, таких как CentOS и Fedora.

Чтобы установить репозиторий EPEL в CentOS 8, выполните следующую команду dnf в терминале.


После установки проверьте, что всё завершилось удачно, для этого выполните команду.


Шаг 2: Установка заголовков ядра и инструментов сборки

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


После установки убедитесь, что версия kernel-devel соответствует версии вашего ядра Linux, выполнив следующие команды:


Вывод ясно указывает на конфликт между двумя версиями. Версия kernel-devel - 4.18.0-259.el8.x86_64, а версия ядра Linux — 4.18.0-257.el8.x86_64.

Чтобы решить эту проблему, обновите ядро Linux, выполнив команду:

При появлении запроса нажмите «д» и нажмите ENTER, чтобы продолжить обновление. Когда обновление будет завершено, перезагрузите систему CentOS 8.

Во время перезагрузки обязательно загрузитесь с последней записью ядра, соответствующей версии kernel-devel. Как видите, это обычно первая запись.


После того как система загрузится, войдите в систему и ещё раз подтвердите, что версия ядра теперь совпадает с версией ядра Linux.


Две версии сейчас синхронизированы. Отлично! Теперь вы можете продолжить и установить гостевые дополнения VirtualBox.

Шаг 3. Установка гостевых дополнений VirtualBox в CentOS 8

Есть два способа установить гостевые дополнения, и здесь мы рассмотрим оба способа:

Графическая установка гостевых дополнений VirtualBox

Чтобы установить гостевые дополнения, перейдите в меню VirtualBox и нажмите «Устройства» → «Подключить образ диска Дополнений гостевой ОС…»:


Появится всплывающее окно, как показано на скриншоте. Отсюда вы можете выбрать два варианта:


Вы можете нажать «Запустить» и затем ввести пароль своего пользователя для выполнения программы с повышенными привилегиями. После этого начнётся сборка модулей. Информация о сборке будет выводиться в терминал. Обратите внимание на выводимую информацию, чтобы убедиться, что сборка не завершилась ошибкой. К примеру, на следующем скриншоте сборка гостевых модулей завершилась ошибкой (из-за отсутствия пакета autoconf):


После окончания установки, перезагрузите систему и проверьте работу функций, которые включают гостевые дополнения VirtualBox.

Установка гостевых дополнений VirtualBox вручную

Второй вариант — установить в командной строке. Для этого выберите опцию «Отмена», а затем откройте терминал и создайте точку монтирования для ISO-образа гостевых дополнений.

Затем смонтируйте образ ISO в точке монтирования.

Затем, наконец, перейдите к месту монтирования и запустите скрипт установщика VirtualBox.

Как только скрипт будет запущен, вы сразу увидите, как экран разворачивается в полный размер. Если в вашем случае этого не произошло, перезагрузите систему и, наконец, загрузитесь в полноэкранную виртуальную машину CentOS 8 🙂


В меню VirtualBox включите «Общий буфер обмена» и другие функции, которые вам нужны:


Например «Общий буфер обмена» → «Двунаправленный» позволяет копировать и вставлять текст между хост-системой и гостевой системой.

Читайте также: