Создаём репозиторий для 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. Всё.

Обсуждение закрыто.