Свой репозиторий — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
(Новая страница: «= Введение и терминология = Эта статья описывает создание своего репозитория пакетов дл…»)
 
Строка 21: Строка 21:
 
  sudo dnf install rsync
 
  sudo dnf install rsync
  
Создайте каталог для размещения копии репозитория:
+
Создайте каталоги для размещения копий репозиториев:
  sudo mkdir -p /srv/mirror
+
  sudo mkdir -p /srv/mirror/x86_64 /srv/mirror/i686
 
+
 
+
  
 +
Запустите синхронизацию. В приведенном ниже примере исключаются каталоги большого веса с debuginfo и SRPM, которые в большинстве случаев не нужны.
 +
<pre>
 +
rsync -av --progress \
 +
  --exclude SRPMS \
 +
  --exclude 'debug_*'
 +
  --exclude ___REMOVED \
 +
  --exclude '*-rpm-backup' \
 +
  rsync://mirror.rosalab.ru/rosa/rosa2021.1/repository/{x86_64,i686} /srv/mirror/
 +
</pre>
  
 
[[Категория:ROSA Server|ROSA Server]]
 
[[Категория:ROSA Server|ROSA Server]]

Версия 19:16, 28 июня 2022

Введение и терминология

Эта статья описывает создание своего репозитория пакетов для операционных систем ROSA Fresh/Chrome версии 12 и новее, а также Nickel, Cobalt и ROSA Virtualization.

Репозиторий пакетов — хранилище RPM-файлов с дополнительными файлами-метаданными.

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

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

Приведенные команды следует выполнять от непривилегированного пользователя (не root); команды, которые необходимо выполнять с правами root, написаны через sudo.

Подразумевается, что сервером, на котором размещается репозиторий, является система на базе ROSA Fresh/Chrome 12 (rosa2021.1) и новее.

Зеркалирование репозиториев

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

Для зеркалирования предлагается использовать утилиту rsync. Если она не установлена, выполните:

sudo dnf install rsync

Создайте каталоги для размещения копий репозиториев:

sudo mkdir -p /srv/mirror/x86_64 /srv/mirror/i686

Запустите синхронизацию. В приведенном ниже примере исключаются каталоги большого веса с debuginfo и SRPM, которые в большинстве случаев не нужны.

rsync -av --progress \
  --exclude SRPMS \
  --exclude 'debug_*' 
  --exclude ___REMOVED \
  --exclude '*-rpm-backup' \
  rsync://mirror.rosalab.ru/rosa/rosa2021.1/repository/{x86_64,i686} /srv/mirror/