Createrepo
Создание репозитория DNF
TODO:
- создание фильтров по вхождению пакетов при формировании репозитория
- включение в репозиторий пакетов из заранее сформированного списка
Установим пакеты createrepo:
# apt-get install createrepo_c
Создаем каталог, в котором будет располагаться репозиторий:
# mkdir -p /var/www/html/repo/alt/releases/p11/x86_64
Кидаем в него rpm-пакеты.
Открываем консоль.
# createrepo /var/www/html/repo/alt/releases/p11/x86_64
Команда создаст метаданные репозитория внутри каталога с именем repodata, на основе пакетов, содержащихся в целевом каталоге, и должна перезапускаться каждый раз, когда репозиторий обновляется новыми пакетами или удаляются старые пакеты.
В данном каталоге хранятся файлы с окончанием *.xml.tar.gz - базы метаданных RPM в виде заархивированных xml-файла и sqlite БД (содержащих основную информацию, дополнительную информацию и список файлов).
Настройка веб-сервера
По странице Веб-сервер:
- ставим пакет apache2
# apt-get install apache2
- включаем службу:
# systemctl enable --now httpd2
- правим конфиг:
Открываем от имени суперпользователя:
# mcedit /etc/httpd2/conf/include/Directory_html_default.conf
Необходимо в строке
Options Includes FollowSymLinks MultiViews
дописать слово Indexes:
Options Indexes Includes FollowSymLinks MultiViews
Прописывание репозитория
Установим утилиту DNF:
# apt-get install dnf
Открываем файл:
# mcedit /etc/dnf/dnf.conf
Добавляем строки:
[petr] baseurl=http://127.0.0.1:80/repo enabled=1 gpgcheck=0 sslverify=0
- [petr] - идентификатор репозитория
- baseurl - адрес репозитория
- enabled - включен репозиторий, или нет
- gpgcheck - проверять подпись пакетов, или нет
- sslverify - проверять SSL-сертификат у сервера, или нет