Red hat linux настройка репозиториев
Репозиторий программного обеспечения — это место для хранения и поддержки программных пакетов RPM для дистрибутива Redhat Linux, откуда пользователи могут загружать и устанавливать пакеты на своих серверах Linux.
Преимущество создания локального репозитория заключается в том, что вам не требуется подключение к Интернету для установки программного обеспечения или обновлений.
YUM (Yellowdog Updater Modified) или DNF (Dandified YUM) — это широко распространённая утилита для управления пакетами ПО для систем Linux, основанных на RPM (RedHat Package Manager). Данная утилита упрощает установку ПО в RedHat/CentOS Linux.
- После завершения установки, необходимо включить автоматический запуск службы Nginx во время загрузки системы и проверить состояние с помощью следующих команд:
- Убедитесь, что ваш сервер Nginx запущен и работает, перейдя по следующему URL-адресу в веб-браузере. Вы увидите веб-страницу Nginx по-умолчанию.
- Создайте точку монтирования локального репозитория в корневом каталоге документов /var/www/html/ и смонтируйте загруженный DVD/ISO-образ в каталог /mnt.
- Локально скопируйте файлы ISO в каталог /var/www/html/local_repo и проверьте содержимое с помощью ls команды:
- Настало время для настройки локального репозитория. Вам необходимо создать файл настройки в директории /etc/yum.repos.d/ и установить соответствующие разрешения для файла, как показано ниже:
- Затем отредактируйте созданный файл:
- Скопируйте и вставьте в файл следующее:
Сохраните внесённые изменения и закройте файл.
- Теперь вам нужно установить необходимые пакеты для создания, настройки и управления вашим локальным репозиторием, используя следующую команду:
- На этом шаге вам необходимо запустить процесс очистки временных файлов, которые хранятся в репозиториях, используя следующую команду:
- Затем убедитесь, что созданные репозитории отображаются в списке включенных репозиториев.
- Попробуйте установить пакет из локальных репозиториев, например, установите инструмент командной строки Git, как описано ниже:
Как видно из вывода вышеуказанной команды, пакет Git устанавливается из репозитория LocalRepo_AppStream, что и показано на скриншоте. Это означает, что локальные репозитории включены и исправно работают.
- Теперь на клиентских машинах RHEL 8 добавьте ваши локальные репозитории в конфигурацию YUM:
Скопируйте и вставьте конфигурацию, описанную ниже, в файл. Обязательно замените baseurl IP-адресом или доменом своего сервера.
Сохраните внесённые изменения и начните использовать локальные зеркала YUM.
В стандартных (официальных) репозиториях RHEL/CentOS доступно лишь небольшое количество базовых пакетов, причем в них иногда предлагаются не самые новые версии программ. Однако вы можете использовать сторонние публичные или частные репозитории для установки новых версий программ в Red Hat Enterprise Linux, CentOS, Oracle Linux и Scientific Linux. Из наиболее распространённых сторонних репозиториев можно выделить Remi и EPEL. В этой статье мы рассмотрим особенности подключения, управления и использования дополнительных репозиториев с помощью пакетного менеджера YUM в CentOS 7.
Репозиторий представляет собой обновляемое хранилище rpm-пакетов программ для Linux. Различные менеджеры пакетов могут использовать сетевые репозитории для установки и обновления программ.Подключение репозиториев EPEL и Remi в CentOS
При установке операционной системы (в нашем примере это CentOS 7), по умолчанию устанавливаются базовые репозитории. Посмотреть их список можно следующей командой:
Как можно увидеть на скриншоте в системе установлено 3 репозитория — base, extras, updates.
Этих основных репозиториев хватит, чтобы начать вашу работу по установке базового ПО и установке дополнительных репозиториев.
Рассмотрим, как добавить дополнительные репозитории в CentOS.
Пожалуй, самый популярный на данный момент репозиторий — это EPEL.
EPEL (Extra Packages for Enterprise Linux) — это открытый и бесплатный проект репозитория, предоставляемый командой Fedora. Он содержит в себе высококачественные пакеты дополнительного ПО для Linux дистрибутивов. В данном репозитории размещается огромное количество пакетов начиная с ftp-серверов, заканчивая php и утилитами мониторинга системы. Это самый популярный дополнительный репозиторий. Важно отметить, что пакеты из EPEL не конфликтуют с родными пакетами CentOS/RHEL и не заменяют их.Репозиторий EPEL в CentOS 7 устанавливается очень просто (в отличии от CentOS 6) через RPM пакет (это самый простой способ добавления репозитория):
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 repo-pkgs epel list
Конфигурационные файлы репозиториев (*.repo)
Все конфигурационные файлы репозиториев расположены в директории /etc/yum.repos.d/. В конфигурационных файл *.repo. Типовой конфигурационный файл репозитория содержит следующие параметры:
В минимальном случае repo файл может выглядеть так:
Например, после подключения репозитория REMII, в директории репозиториев появится несколько конфигурационных файлов Remi (remi-*.repo).
Как вы видите, Remi имеет отдельный конфигурационный файл для каждой версии php. Вам нужно включить нужную вам версию в конфигурационном файле, например у меня на сервере будет стоять версия php 7.3, для этого я включил именно этот репозиторий (в файле remi-php73.repo указал enabled=1):
Вы можете подключит репозиторий вручную, для этого нужно создать конфигурационный файл репозитория в директории /etc/yum.repos.d/. Подключим репозиторий MaruaDB.
Добавим в него данные, которое нам предоставляет разработчик пакета MariaDB:
Как отключить репозиторий в CentOS?
Чтобы отключить один из подключенных репозиториев, достаточно в его конфигурационном файле указать 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
Таким образом вы можете управлять подключенным репозиториями на сервере. Отметим, что разные репозитории могут содержать одинаковые пакеты и при обновлении у вас может возникать конфликт версий. Поэтому всегда оставляйте включенными только те репозитории, с которыми вы работаете.
Другие популярные репозитории пакетов для 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:
В этой статье мы показали особенности управления репозиториями в CentOS и рассмотрели полезные репозитории.
В этом кратком руководстве мы рассмотрим, что такое репозиторий RPM Fusion, почему мы должны установить репозиторий RPM Fusion и, наконец, как включить репозиторий RPM Fusion в Fedora, RHEL и их подобных, таких как дистрибутивы CentOS, AlmaLinux.
Что такое репозиторий RPM Fusion?
Проект Fedora строго придерживается политики лицензирования Fedora. Она исключает некоторые пакеты из официальных репозиториев по следующим причинам:- Если пакет соответствует требованиям, его нельзя включить в Fedora;
- Если пакет с закрытым исходным кодом, он не может быть включен в Fedora;
- Если пакет обременен законом, он не может быть включен в Fedora;
- Если пакет нарушает законы США (в частности, федеральные законы или законы соответствующих штатов), он не может быть включен в Fedora.
Любой пакет, который не соответствует вышеупомянутой политике, не будет включен в официальные репозитории Fedora и RHEL.
Вот почему создаются некоторые сторонние репозитории с либеральной политикой лицензирования.
Одним из таких репозиториев является RPM Fusion.
RPM Fusion необходим для установки необходимых мультимедийных кодеков, проприетарного программного обеспечения и драйверов в Fedora, RHEL и его клонах, таких как CentOS, AlmaLinux и т. д.
RPM Fusion имеет два репозитория, а именно «free» и «nonfree».
Бесплатный репозиторий ( free ) содержит пакеты с открытым исходным кодом в соответствии с руководящими принципами лицензирования Fedora.
Несвободный репозиторий ( nonfree) содержит распространяемые пакеты, которые не являются Open Source, и пакеты, которые не являются бесплатными для коммерческих целей.
Вы можете добавить оба репозитория и использовать их одновременно в своей личной системе.
Между пакетами в бесплатных и несвободных репозиториях конфликтов не будет.
Если вас интересует запуск только бесплатных пакетов, просто добавьте free репо и установите unfree репо позже.
1. Включение репозитория RPM Fusion в Fedora Linux.
Чтобы включить как бесплатные, так и несвободные репозитории RPM Fusion в вашей системе Fedora, запустите:
Чтобы решить все эти проблемы, вы можете установить и включить репозиторий Remi на своем предприятии Fedora и Red Hat. После установки репозитория Remi на вашем компьютере вы можете легко загружать приложения на свой компьютер через репозиторий.
Репозиторий Remi в Fedora и Red Hat
Если вы являетесь пользователем Ubuntu или Debian Linux, вы можете легко найти прекрасные стеки LAMP или другие приложения для своей системы. Найти приложения для систем на базе Red Hat немного сложнее, чем для Debian. В настоящее время рабочие станции Red Hat Enterprise и Fedora поддерживают репозиторий Remi. Он написан на языке PHP и бесплатен. Для установки Remi на RHEL требуются пакеты EPEL (Extra Packages for Enterprise). В этом посте будет рассказано, как установить, включить и использовать репозиторий Remi в Fedora / Red Hat Enterprise.
Шаг 1. Установите Remi Repo в Fedora / Red Hat
Установить репозиторий Remi в Red Hat и Fedora легко и просто. Для этого требуются привилегии root и базовые знания по использованию Linux. Выполните следующие шаги, чтобы установить репозиторий Remi в вашей системе.
Во-первых, вам нужно обновить системный репозиторий. Выполните следующую команду YUM в оболочке терминала, чтобы обновить систему.
По завершении обновления вы можете запустить следующие команды YUM в оболочке терминала с правами root, чтобы установить репозиторий Remi в Red Hat. Следующая команда YUM будет выполняться как в RHEL 7, так и в 8. Эта команда также загрузит и установит пакеты EPEL в вашей системе.
Если вы используете Red Hat 7, вам нужно выполнить следующую команду YUM, чтобы получить репозиторий Remi.
Установка репозитория Remi в Fedora очень похожа на его установку в RHEL. Если вы используете последнюю версию Fedora, выполните следующие команды DNF в оболочке терминала с правами root, чтобы установить репозиторий Remi в вашей системе.
Если вы используете более раннюю версию Fedora, выполните следующие команды в оболочке терминала, чтобы получить репозиторий Remi. Я протестировал репозиторий Remi на своей рабочей станции Fedora 33. Репозиторий Remi может также без проблем работать в других более ранних и предыдущих системах Fedora.
Шаг 2. Включите и запустите репозиторий Remi
Как только установка репозитория Remi завершится, вы можете включить его и начать использовать. Я должен упомянуть, что по умолчанию репозиторий Remi не включен в системе Fedora / Red Hat. Когда вы устанавливаете пакет через репозиторий Remi, вам необходимо включить его. Например, если вы хотите установить пакет с именем <application_name>, вам необходимо выполнить следующую команду в оболочке терминала.
Шаг 3. Измените Remi Repo в Fedora / RHEL
Как я уже упоминал ранее, по умолчанию Remi не включен в RHEL; вам нужно настроить его, чтобы включить его навсегда. Вы можете запустить следующую команду в оболочке терминала, чтобы внести небольшие изменения в сценарий конфигурации Remi.
Когда откроется сценарий конфигурации, найдите значение enable и измените значение с 0 на 1. Это небольшое изменение позволит серверу Remi на вашем компьютере навсегда.
После настройки и включения репозитория Remi теперь вы можете запустить следующую команду в оболочке терминала, чтобы проверить, работает ли репозиторий в вашей системе без сбоев.
Вы также можете найти список пакетов, установленных через репозиторий Remi, выполнив следующую команду.
Выводы
Репозиторий Remi не является новым репозиторием для RHEL, он был построен еще в 2005-2006 годах для рабочей станции Fedora, но стал заметным в 2017-2018 годах. Пользоваться им легко и быстро. Во всем посте я рассказал вам, что такое репозиторий Remi и как вы можете установить его и начать работу с ним в системе Fedora и Red Hat.
Читайте также: