Создаём репозиторий для CentOS

Раз уж сделал сделал репозиторий, запишу шаги. Итак:
1. Ставим пакет createrepo. Например, так — yum install createrepo
2. Создаём ключи для подписи пакетов. Запускаем

gpg --gen-key

и отвечаем на вопросы:

Выберите тип ключа:
(1) RSA and DSA (default)
(2) DSA and Elgamal
(3) DSA (только для подписи)
(4) RSA (только для подписи)

Нужно выбрать ПЕРВЫЙ вариант.

Запрос системы:
ключи RSA могут иметь длину от 1024 до 4096 бит.
Какой размер ключа Вам необходим? (2048)

По умолчанию стоит 2048. Этого в настоящее время вполне хватит. Просто нажмите ENTER.

Запрос системы:
Выберите срок действия ключа.
0 = без ограничения срока действительности
= срок действительности n дней
w = срок действительности n недель
m = срок действительности n месяцев
y = срок действительности n лет
Ключ действителен до? (0)

В данном случае вы можете указать срок действия ключа. В качестве принятого (да и в законодательстве РФ), срок действия ключа ограничивают 1 годом. Но вы можете оставить и 0 — срок действия ключа не будет ограничен. Просто нажмите ENTER.

Запрос системы:
Для идентификации Вашего ключа необходим User ID
Программа создаст его из Вашего имени, комментария и адреса e-mail в виде:
"Vasya Pupkin (lich) "

Ваше настоящее имя:

Указываем имя, комментарий, адрес, затем вводим пароль для ключа. После этого пойдет процесс генерации ключей. Необходимо будет сгенерировать много случайных чисел.
Проще всего это сделать отправив в /dev/null что-то большое, например iso-образ centos:
cat CentOS-6.0-x86_64-bin-DVD1.iso >/dev/null

Итак, закрытый ключ у нас готов. Осталось получить открытый. Проверяем список ключей командой gpg —list-key:

/home/vasya/.gnupg/pubring.gpg
------------------------------
pub 2048R/21F0F243 2011-09-09
uid Vasya Pupkin (lich)
sub 2048R/F96A6EE6 2011-09-09

Здесь pub — публичный ключ, sub — секретный.

Получаем открытый ключ:
gpg —export -a ‘Vasya Pupkin (lich)’ >RPM-GPG-KEY-vasya.pupkin

Этот файл должен быть доступен для скачивания извне, чтобы было можно выполнить проверку подлинности пакетов репозитория.

3. Создаём файл конфигурации ~/.rpmmacros:

%_signature gpg
%_gpg_path /home/vasya/.gnupg
%_gpg_name Vasya Pupkin (lich)

Теперь мы можем подписывать свои пакеты. Делается это просто:
rpm --add-sign blbalblbala.rpm

4. Ну и собственно, создаём сам репозиторий: createrepo -q -p /mnt/share/centos/os/i386

Чтобы обновить пакеты в репозитории выполняем команду createrepo --update -q -p /mnt/share/centos/os/i386

5. Открываем доступ по ftp или http. Всё.

Запись опубликована в рубрике Репозиторий с метками , . Добавьте в закладки постоянную ссылку.