Создание локального клона репозитория пакетов RedOS

Оцените статью

Эта инструкция описывает, как создать локальную копию (клон) репозитория пакетов RedOS — для офлайн‑использования, резервного копирования или настройки собственного зеркала.

1. Важные уточнения

  • Репозиторий пакетов RedOS — это не Git‑репозиторий, а пакетный репозиторий (типа YUM/DNF), содержащий RPM‑пакеты и метаданные.
  • Для клонирования используется утилита rsync или reposync (из пакета yum‑utils/dnf-utils).
  • Локальный клон позволит устанавливать/обновлять пакеты без доступа к интернету.

2. Подготовка системы

Установите необходимые утилиты

# dnf install rsync yum-utils  # для DNF/YUM-систем

Если используется dnf, вместо yum-utils можно установить dnf-plugins-core.

Проверьте подключение к сети

Убедитесь, что вы можете достучаться до официального репозитория RedOS (например, через ping или браузер).

3. Определите URL репозитория

Найдите актуальный URL репозитория RedOS. Обычно он имеет вид:

http://repo.redos.ru/redos/<версия>/<архитектура>/

или

rsync://repo.redos.ru/redos/<версия>/<архитектура>/

Примеры (актуальные URL уточняйте на официальном сайте RedOS):

Примечание:

  • <версия> — например, 7.38.0 и т. п.
  • <архитектура> — обычно x86_64, может быть aarch64 и др.

4. Способ 1: Клонирование через reposync (рекомендуется)

reposync — утилита, специально предназначенная для копирования YUM/DNF‑репозиториев.

Шаг 1. Настройте репозиторий в системе

Создайте или отредактируйте файл в /etc/yum.repos.d/:

# vi /etc/yum.repos.d/redos-repo.repo

Пример содержимого:

[redos-repo] name=RedOS Repository baseurl=http://repo.redos.ru/redos/7.3/x86_64/ enabled=1 gpgcheck=1 gpgkey=http://repo.redos.ru/redos/RPM-GPG-KEY-RedOS-7

Замените URL и версию на актуальные.

Шаг 2. Запустите reposync

# reposync --repoid=redos-repo --download_path=/путь/к/локальному/репо --downloadcomps

Параметры:

  • --repoid — ID репозитория из .repo-файла.
  • --download_path — путь, куда сохранится клон.
  • --downloadcomps — скачать файл comps.xml (нужен для групп пакетов).

Пример:

# reposync --repoid=redos-repo --download_path=/var/www/html/redos-repo --downloadcomps

Шаг 3. Проверьте результат

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

  • папки Packages/ (с RPM‑файлами),
  • файл repodata/ (метаданные репозитория),
  • файл comps.xml (если указан --downloadcomps).

5. Способ 2: Клонирование через rsync

Если reposync недоступен или нужен более гибкий контроль.

Команда:

# rsync -avz --progress rsync://repo.redos.ru/redos/7.3/x86_64/ /путь/к/локальному/репо/

Параметры:

  • -a — архивный режим (сохраняет права, время и т. д.),
  • -v — подробный вывод,
  • -z — сжатие данных,
  • --progress — показ прогресса.

Важно:

  • Используйте rsync://‑URL, если сервер поддерживает rsync.
  • Если rsync недоступен, можно использовать wget -m или curl, но это менее надёжно.

6. Создание метаданных репозитория (если нужно)

Если вы копировали файлы вручную (например, через rsync), нужно сгенерировать метаданные:

  1. Установите createrepo (если нет):
   # dnf install createrepo
  1. Сгенерируйте метаданные:
   # createrepo /путь/к/локальному/репо/

Для обновления существующих метаданных:

   # createrepo --update /путь/к/локальному/репо/

7. Настройка локального репозитория на клиентах

Чтобы использовать локальный клон, создайте .repo-файл на целевых машинах:

# vi /etc/yum.repos.d/local-redos.repo

Содержимое:

[local-redos] name=Local RedOS Repository baseurl=file:///путь/к/локальному/репо/ enabled=1 gpgcheck=0  # или 1, если вы доверяете GPG‑ключу

Если вы сохранили GPG‑ключ, укажите его:

gpgcheck=1 gpgkey=file:///путь/к/ключу/RPM-GPG-KEY-RedOS-7

8. Проверка работы локального репозитория

На клиенте выполните:

# dnf clean all # dnf makecache # dnf repolist # dnf check-update

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

9. Обновление локального репозитория

Чтобы синхронизировать локальный клон с удалённым:

  • Через reposync:
  # reposync --repoid=redos-repo --download_path=/путь/к/локальному/репо --downloadcomps --newest-only
  • Через rsync:
  # rsync -avz --delete rsync://repo.redos.ru/redos/7.3/x86_64/ /путь/к/локальному/репо/

--delete — удаляет файлы, которых уже нет на сервере.

  • После обновления не забудьте перегенерировать метаданные:
  # createrepo --update /путь/к/локальному/репо/

10. Рекомендации

  • Место на диске: репозиторий RedOS может занимать десятки ГБ. Убедитесь, что у вас достаточно места.
  • Периодичность обновления: настраивайте cron‑задачи для регулярного обновления локального репозитория.
  • Безопасность: если репозиторий доступен по сети, настройте авторизацию (например, через HTTP‑аутентификацию).
  • Резервное копирование: регулярно делайте бэкапы локального репозитория.

Готово! Теперь у вас есть полноценный локальный клон репозитория пакетов RedOS.

Related Posts

Установка Keycloak в Ubuntu Linux 22.04

В современном цифровом мире вопросы аутентификации и авторизации пользователей выходят на первый план. Разработчикам и администраторам систем требуется надёжное, гибкое и безопасное решение для управления идентификацией — без избыточных затрат…

Установка и настройка FreeIPA-клиент в Ubuntu Linux

Для присоединения Ubuntu‑системы к домену FreeIPA используется утилита ipa-client-install из пакета freeipa-client. Предварительные требования На этапе установки может быть предложено указать Kerberos realm и здесь на данном этапе можно оставить…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

You Missed

Установка Keycloak в Ubuntu Linux 22.04

Установка и настройка FreeIPA-клиент в Ubuntu Linux

Установка и настройка FreeIPA-клиент в Ubuntu Linux

Установка и базовая настройка Wiki Outline

Установка и базовая настройка Wiki Outline

Snap, AppImage и Flatpak: отличия и практическое использование

Snap, AppImage и Flatpak: отличия и практическое использование

Вебинар «База знаний с AI: создаем корпоративную Wiki в облаке»

Вебинар «База знаний с AI: создаем корпоративную Wiki в облаке»

Маршрутизация DNS-запросов в Mikrotik

Маршрутизация DNS-запросов в Mikrotik