Astra linux devel repo

Исходные данные

Для размещения и распространения репозиториев используется сервер Astra Linux с настроенным сетевым интерфейсом, имеющим статический IP-адрес 192.168.56.1 (см. Настройка сетевых подключений в Astra Linux).

Структура каталогов репозитория, используемая далее в статье:

  • каталог /srv/repo/alse/main — основной репозиторий для Astra Linux x.7 или репозиторий основного диска для более ранних обновлений;
  • каталог /srv/repo/alse/base — базовый репозиторий для Astra Linux x.7 или репозиторий диска со средствами разработки для более ранних обновлений;
  • каталог /srv/repo/alse/update-main — репозиторий обновления основного репозитория (основного диска);
  • каталог /srv/repo/alse/update-base — репозиторий обновления базового репозитория (диска со средствами разработки);

Astra Linux Special Edition Создание репозитория из ISO-образов установочных дисков

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

Примонтировать образ установочного диска (если на компьютере нет каталога /media/cdrom — то создать каталог /media/cdrom):

Отмонтировать ISO-образ диска:

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

sudo mkdir -p /srv/repo/alse/base
[ -d /media/cdrom ] || sudo mkdir /media/cdrom
sudo mount /путь_к_ISO-образу /media/cdrom
sudo cp -a /media/cdrom/* /srv/repo/alse/base
sudo umount /media/cdrom

sudo mkdir -p /srv/repo/alse/update-main
[ -d /media/cdrom ] || sudo mkdir /media/cdrom
sudo mount /путь_к_ISO-образу /media/cdrom
sudo cp -a /media/cdrom/* /srv/repo/alse/update-main
sudo umount /media/cdrom

sudo mkdir -p /srv/repo/alse/update-base
[ -d /media/cdrom ] || sudo mkdir /media/cdrom
sudo mount /путь_к_ISO-образу /media/cdrom
sudo cp -a /media/cdrom/* /srv/repo/alse/update-base
sudo umount /media/cdrom

Astra Linux CE

Создать репозиторий Astra Linux Common Edition можно двумя способами:

    Либо скопировать неполный репозиторий с ISO образа диска:

sudo mkdir -p /srv/repo/alce
[ -d /media/cdrom ] || sudo mkdir /media/cdrom
sudo mount /путь_к_ISO-образу_диска /media/cdrom
sudo cp -a /media/cdrom/* /srv/repo/alce
sudo umount /media/cdrom

sudo mkdir -p /srv/repo/alce
sudo rsync —delete -aqLz dl.astralinux.ru::astra/astra/stable/2.12_x86-64/repository/ /srv/repo/alce

где «::astra» — указание наименования модуля rsync, а /astra/stable/2.12_x86-64/repository — загружаемый каталог репозитория. Можно также использовать альтернативный формат указания модуля rsync как корневого каталога:

sudo rsync —delete -aqLz rsync://dl.astralinux.ru/astra/astra/stable/2.12_x86-64/repository /srv/repo/alce

sudo rsync —progress —stats —delete -avLz rsync://dl.astralinux.ru/astra/astra/stable/2.12_x86-64/repository /srv/repo/alce

Организация распространения пакетов

Отдавать пакеты можно как по протоколу ftp, так и по http.

Читайте также:  Alt simply linux документация

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

  • Для протокола FTP:
    • Порт 21/TCP для команд;
    • Порт 20/TCP для данных;
    • Порты 49152-65534/TCP динамически;
    • Порт 80/TCP;
    • Порт 443/TCP;
    • Порт 873/TCP;

    FTP репозиторий

    Установить службу FTP (подробнее см. Использование протокола FTP):

    # Анонимный доступ разрешен
    anonymous_enable=YES
    local_enable=no
    anon_root=/srv/repo
    no_anon_password=yes
    hide_ids=yes

    HTTP репозиторий

    Данная часть инструкции применима только к «чистому» свежеустановленному серверу Apache2. Для применения инструкции к настроенному серверу следует обратиться к администратору этого сервера.

    Для применения данной инструкции на Astra Linux Special Edition с включенным МРД необходимо в файле настроек /etc/apache2/apache2.conf указать параметр AstraMode off и перезапустить сервис Apache2. Допустимость использования ОС с такими настройками определяется действующей политикой безопасности на объекте.

    Настройка источников пакетов (файл /etc/apt/sources. list и каталог /etc/apt/sources.list.d )

    Источники пакетов могут быть указаны в файле /etc/apt/sources.list и в файлах, расположенных в каталоге /etc/apt/sources.list.d. Примеры содержимого файлов приведены ниже, имена файлов в каталоге /etc/apt/sources.list.d могут быть произвольными, но должны иметь «расширение» .list.

    Локальные источники пакетов

    # репозиторий основного диска
    deb file:/srv/repo/alse/ main stable main contrib non- free
    # репозиторий диска со средствами разработки
    deb file:/srv/repo/alse/base stable main contrib non- free
    # репозиторий диска с обновлением основного диска
    deb file:/srv/repo/alse/update-main stable main contrib non- free
    # репозиторий диска с обновлением диска со средствами разработки
    deb file:/srv/repo/alse/update-base stable main contrib non- free

    FTP

    Для Astra Linux Common Edition:

    deb ftp: //192 .168.56.1 /alce/ stable main contrib non- free

    Для Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.6:

    # репозиторий основного диска
    deb ftp: //192 .168.56.1 /alse/main stable main contrib non- free
    # репозиторий диска со средствами разработки
    deb ftp: //192 .168.56.1 /alse/base stable main contrib non- free
    # репозиторий диска с обновлением основного диска
    deb ftp://192.168.56.1 /alse/update-main stable main contrib non- free
    # репозиторий диска с обновлением диска со средствами разработки
    deb ftp: //192 .168.56.1 /alse/update-base stable main contrib non- free

    Для Astra Linux Special Edition x.7 примеры указания репозиториев см. в статье Интернет-репозитории Astra Linux Special Edition x.7

    HTTP

    deb http: //192 .168.56.1 /repo/alce stable main contrib non- free

    # репозиторий основного диска
    deb http: //192 .168.56.1 /repo/alse/main stable main contrib non- free
    # репозиторий диска со средствами разработки
    deb http: //192 .168.56.1 /repo/alse/base stable main contrib non- free
    # репозиторий диска с обновлением основного диска
    deb http: //192 .168.56.1 /repo/alse/update-main stable main contrib non- free
    # репозиторий диска с обновлением диска со средствами разработки
    deb http: //192 .168.56.1 /repo/alse/update-base stable main contrib non- free

    Создание локальной копии репозитория с помощью apt-mirror

    Инструмент командной строки apt-mirror позволяет создавать локальные копии сетевых репозиториев пакетов. Инструмент использует конфигурационный файл, подобный конфигурационному файлу apt /etc/apt/sources.list, поддерживает многопоточную загрузку, работу с разными архитектурами, обеспечивает удаление неиспользуемых файлов, позволяет работать с ненадежными и перегруженными линиями передачи данных.

    Установка пакета apt-mirror

    Установить пакет apt-mirror можно с помощью графического менеджера пакетов или командой:

    Настройка пакета apt-mirror

    При установке пакета автоматически создается конфигурационный файл /etc/apt/mirror.list. В этом файле указаны параметры, принятые по умолчанию, и пути к копируемым репозиториям. Пример содержимого файла:

    ############# config ################## # # set base_path /var/spool/apt-mirror # # set mirror_path $base_path/mirror # set skel_path $base_path/skel # set var_path $base_path/var # set cleanscript $var_path/clean.sh # set defaultarch # set postmirror_script $var_path/postmirror.sh # set run_postmirror 0 set nthreads 20 set _tilde 0 # ############# end config ##############

    В большинстве случаев можно использовать указанные настройки, при этом копии репозиториев будут загружаться в каталог /var/spool/apt-mirror. Для того, чтобы изменить каталог, в который будут загружаться репозитории следует раскомментировать параметр set base_path и указать нужный каталог.

    Репозитории для загрузки указываются в конфигурационном файле /etc/apt/mirror.list в формате, подобном /etc/apt/sources.list. Там же могут быть указаны параметры для очистки. Например, для основного репозитория Astra Linux Special Edition 1.7:

    ############# config ################## # # set base_path /var/spool/apt-mirror # # set mirror_path $base_path/mirror # set skel_path $base_path/skel # set var_path $base_path/var # set cleanscript $var_path/clean.sh # set defaultarch # set postmirror_script $var_path/postmirror.sh # set run_postmirror 0 set nthreads 20 set _tilde 0 # ############# end config ############## # Стандартный интернет-репозиторий Astra Linux Special Edition 1.7 deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-main/ 1.7_x86-64 main contrib non-free # Репозиторий с авторизацией (admin:password) и нестандартным портом (8080) deb https://admin:password@company.ru:8080/astra/stable/1.7_x86-64/repository-main/ 1.7_x86-64 main contrib non-free # Удаление неиспользуемых файлов из репозитория (например, устаревших версий пакетов, отсутствующих в индексах) clean https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-main/ # Пропуск указанных каталогов при очистке skip-clean https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-main/installer-amd64/

    Про использовании аппаратных платформ, отличных от x86-64, следует явно указывать используемую архитектуру. Например, для Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7):

    deb [arch=arm64] https://dl.astralinux.ru/astra/stable/4.7_arm/repository-main/ 4.7_arm main contrib non-free deb [arch=arm64] https://dl.astralinux.ru/astra/stable/4.7_arm/repository-update/ 4.7_arm main contrib non-free deb [arch=arm64] https://dl.astralinux.ru/astra/stable/4.7_arm/repository-base/ 4.7_arm main contrib non-free

    При установке пакета apt-mirror создается шаблон для службы cron для ежедневного автоматического обновления репозиториев (файл /etc/cron.d/apt-mirror). Для включения автоматического обновления следует раскомментировать последнюю строку в этом файле:

    # # Regular cron jobs for the apt-mirror package # #0 4 * * * apt-mirror /usr/bin/apt-mirror > /var/spool/apt-mirror/var/cron.log

    Создание копии репозитория

    Создание и обновление копий рекомендуется выполнять от имени служебного пользователя apt-mirror. Этому пользователю должна быть разрешена запись в каталог, в который будет выполняться сохранение репозиториев. Создать каталог можно командой:

    Для примера использовано принятое по умолчанию имя каталога для сохранения /var/spool/apt-mirror.
    После создания каталога его нужно передать служебному пользователю apt-mirror (назначить права доступа):

    Использование копии репозитория

    После завершения копирования локальные копии всех репозиториев, указанных в mirror.list, будут сохранены в подкаталогах каталога mirror каталога для сохранения, а имя подкаталога будет соответствовать имени репозитория. Так копия интернет-репозитория Astra Linux Special Edition 1.7, приведенная в примере выше, будет сохранена как mirror/dl.astralinux.ru. С учетом принятого по умолчанию имени каталога для сохранения полный путь к каталогу репозитория будет /var/spool/apt-mirror/mirror/dl.astralinux.ru, и именно этот каталог нужно будет подключать как репозиторий пакетов к другим системам.

    Кеширование репозиториев с помощью службы apt-cacher-ng

    Установка

    Данных раздел применим к Asrea Linux Special Edition x.7 с подключенным расширенным репозиторием начиная с обновления БЮЛЛЕТЕНЬ № 2021-1126SE17 (оперативное обновление 1.7.1).

    Служба кеширования репозитория apt-cacher-ng представлена пакетом apt-cacher-ng. Пакет доступен в расширенном репозитории начиная с обновления БЮЛЛЕТЕНЬ № 2021-1126SE17 (оперативное обновление 1.7.1) и может быть установлен с помощью Графический менеджер пакетов synaptic или командой:

    После установки пакета служба запускается автоматически и готова к работе. Конфигурационные файлы службы находятся в каталоге /etc/apt-cacher-ng. Кеш находится в каталоге /var/cache/apt-cacher-ng.

    Служба использует порт 3142/tcp. При использовании межсетевого экрана следует разрешить доступ к этому порту. Например, для межсетевого экрана firewalld:

    При использовании системы виртуализации разрешить доступ для виртуальных машин, расположенных на хосте. Например, для системы виртуализации QEMU/KVM:

    Настройка клиентов

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

    Для переключения клиентских машин на работу через прокси можно на этих машинах создать файл с соответствующим правилом в каталоге /etc/apt/. Например, файл /etc/apt/7proxy со следующим правилом:

    Acquire::http::Proxy "http://:3142";

    Правило будет применяться при последующих обращениях к репозиториям.

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

    deb http:///dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 main contrib non-free

    или для использования протокола HTTPS:

    deb http:///HTTPS///dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 main contrib non-free

    Источник

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