Найти тему

Создание локального файлового репозитория на RED OS 7.3

RED OS
RED OS

Доброго всем здравия! В данной статье рассмотрим создание локального файлового репозитория для определенного приложения на RED OS 7.3.

Передо мной стояла задача установить систему мониторинга Zabbix на сервер под управлением RED OS 7.3 (далее целевой сервер), при этом целевой сервер нельзя подключить к интернету из-за технических ограничений и соображений безопасности со стороны Заказчика.

В моем распоряжении был личный ноутбук (далее ноутбук) с выходом в интернет по 4G-модему с установленным Oracle VM VirtualBox, на котором была поднята RED OS 7.3 скачанной >> отсюда .

В Базе знаний RED OS в статье 3.4.2 Создание локального репозитория описан механизм для создания локального сетевого репозитория, при этом нужно скачать весь репозиторий RED OS, а это по моим подсчетам около 150 ГБайт (не точно но много, это точно), настроить web-сервер репозитория и отдать на целевой сервер. Ресурсов и времени у меня на это не было, поэтому я озадачился, как эту проблему упростить и решить в гораздо меньшие сроки.

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

Так как на целевом сервере используется сертифицированная RED OS 7.3, то и пакеты программ мы должны получить из сертифицированного репозитория.

(далее все команды выполняются от пользователя с правам root)

На ноутбуке:

Меняем источники репозиториев:

nano /etc/yum.repos.d/RedOS-Base.repo

в строке baseurl меняем все 7.3 на 7.3c

тоже самое делаем и тут

nano /etc/yum.repos.d/RedOS-Updates.repo

Далее создадим папку хранения репозитория

mkdir /opt/reposzab

Для установки Zabbix-сервера, как указано в базе знаний 3.7.1.2 Настройка сервера на mysql и zabbix 6.2 нам потребуются следующие пакеты программ:

  • httpd
  • zabbix-apache-conf
  • zabbix-sql-scripts
  • mariadb
  • mariadb-server
  • zabbix-server-mysql
  • zabbix-agent

Скачаем эти пакеты со всеми зависимостями в наш репозиторий

dnf download --resolve httpd zabbix-apache-conf zabbix-sql-scripts mariadb mariadb-server zabbix-server-mysql zabbix-agent --downloaddir /opt/reposzab

Забегаю вперед, хочу отметить, что в дальнейшем, при установке MariаDB на целевом сервере был необходим пакет mysql-selinux. Поэтому добавляем и этот пакет в репозиторий.

dnf download --resolve mysql-selinux --downloaddir /opt/reposzab

Для создания локального репозитория нам необходимы некоторые утилиты. Установим их

dnf install createrepo yum-utils

При сборке репозитория потребуется файл comps.xml

Не буду объяснять его назначение и чтобы не выдумывать его самому мы просто сделаем его из репозитория RED OS

создадим временный каталог и перейдем в него

mkdir /opt/temprepo

cd /opt/temprepo

Выполним следущее

reposync --repoid=base --downloadcomps

После того как на экране вы увидите: comps.xml для репозитория base сохранен

Прервите выполнение дальних действий Ctrl+C.

Далее скопируй файл comps.xml в наш репозиторий

cp /opt/temprepo/base/comps.xml /opt/reposzab

Далее создадим наш репозиторий

createrepo -v /opt/reposzab/ -g comps.xml

Перенесем любым доступным способом всю папку /opt/reposzab с ноутбука на целевой сервер.

На целевом сервере:

Меняем источники репозиториев:

в файле

nano /etc/yum.repos.d/RedOS-Base.repo

имеющуюся строку baseurl закоментируем символом # вначале сторки

напишем свою:

baseurl=file:///opt/reposzab/

в файле

nano /etc/yum.repos.d/RedOS-Updates.repo

меняем на enabled=0

Далее устанавливаем Zabbix согласно Базы знаний RED OS 3.7.1.2 Настройка сервера на mysql и zabbix 6.2

Подобным образом можно достаточно быстро установить любые другие программы на RED OS сервера без интернета.

Буду рад, если моя статья помогла вам в решении ваших задач.