Найти в Дзене
ИТ заметки

Создание собственного репозитория Astra Linux

Данная статья сделана на основе статьи https://wiki.astralinux.ru/pages/viewpage.action?pageId=3277393 и немного модифицирована под себя. Для начала подготавливаю ПК для работы репозитория: 1. Устанавливаю Astra Linux 2. Подключаю интернет репозиторий и обновляюсь до актуальной версии. 3. В моем случае происходит ошибка при выполнении sudo apt update, исправляю её. 4. Так же у меня возникает ошибка при выполнении sudo astra-update -A -r, исправляем её 5. После обновления пакетов, удаляем ненужные пакеты sudo apt autoremove 6. Перезагрузить ПК, sudo reboot Подготавливаем репозитоий sudo apt install reprepro
sudo mkdir /srv/repo
sudo mkdir /srv/repo/conf
sudo vim /srv/repo/conf/distributions В файл "distributions" вписываем следующие данные Origin: Debian
Codename: 1.7_x86-64
Suite: stable
Architectures: amd64
Components: main contrib non-free
UDebComponents: main
SignWith: yes Создаем подпись для репозитория sudo gpg --gen-key Команда генерации ключа запросит - имя пользователя, адрес

Данная статья сделана на основе статьи https://wiki.astralinux.ru/pages/viewpage.action?pageId=3277393 и немного модифицирована под себя.

Для начала подготавливаю ПК для работы репозитория:

1. Устанавливаю Astra Linux

2. Подключаю интернет репозиторий и обновляюсь до актуальной версии.

3. В моем случае происходит ошибка при выполнении sudo apt update, исправляю её.

4. Так же у меня возникает ошибка при выполнении sudo astra-update -A -r, исправляем её

5. После обновления пакетов, удаляем ненужные пакеты sudo apt autoremove

6. Перезагрузить ПК, sudo reboot

Подготавливаем репозитоий

sudo apt install reprepro
sudo mkdir /srv/repo
sudo mkdir /srv/repo/conf
sudo vim /srv/repo/conf/distributions

В файл "distributions" вписываем следующие данные

Origin: Debian
Codename: 1.7_x86-64
Suite: stable
Architectures: amd64
Components: main contrib non-free
UDebComponents: main
SignWith: yes

Создаем подпись для репозитория

sudo gpg --gen-key

Команда генерации ключа запросит - имя пользователя, адрес e-mail, пользователя, пароль. Введити запрошенные данные и подтвердить создание ключа.

Инициализируем репозитрий

sudo reprepro --ask-passphrase -b /srv/repo export

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

-2

Выгружаем открытый ключ

sudo gpg --armor --output repo_gpg.key --export igorgof@yandex.ru

Вместо igorgof@yandex.ru впишити свой E-mail который вы использовали при генерации ключа. В результате в текущем каталоге будет создан файл "repo_gpg.key". Этот файл необходимо скопировать на компьютер, где будет использоваться данный репозиторий, и зарегистрировать его. Зарегистрируем данный ключ на этом компьютере.

sudo apt-key add repo_gpg.key

Теперь подготовим web сервер для предоставления доступа к репозиторию по протоколу http

sudo apt install apache2
sudo ln -s /srv/repo /var/www/html/repo

В файл "/etc/apache2/sites-enabled/000-default.conf" после строки "DocumentRoot /var/www/html" добавим

<Directory /var/www/html/repo>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order Deny,Allow
Allow from all
</Directory>
-3

В фале "/etc/apache2/apache2.conf" раскомментируем строчку "# AstraAudit on" и вместо "on" впишем "off"

-4

Перезапустить службу apache2

sudo systemctl restart apache2

Теперь можно добавлять пакеты в репозиторий командой

sudo reprepro -b /srv/repo/ includedeb 1.7_x86-64 <путь_к_пакетам>/*.deb

Для того что-бы пользоватся своим репозиторием необходимо: Добавить ключ репозитория и добавить в качестве истояника "deb http://192.168.1.13/repo/ 1.7_x86-64 main contrib non-free". Здесь вместо 192.168.1.13 впишите ip адрес своего сервера или его доменное имя.

sudo vim /etc/apt/sources.list.d/my.repo.list

Вписываем в него

deb http://192.168.1.13/repo/ 1.7_x86-64 main contrib non-free
-5