Сделаем-ка репозиторий Fedora Core

Для начала нужно не мало места… К примеру только одни апдейты пакетов занимают около 15г ну и сами пакеты еще столько же, если не больше. Я не замерял.

Итак место есть, сливаем…
wget -mc -np -l 0 http://mirror.yandex.ru/fedora/linux/updates/12/
wget -mc -np -l 0 http://mirror.yandex.ru/fedora/linux/releases/12/
-mc — сделать зеркало
-np — вверх не подниматься
-l 0 — вниз до упора

Сливать конечно целиком все смысла нет… Там еще ppc и ppc64 лежат, они я думаю вообще никому не уперлись… Поэтому добавляем не нужные нам папки вот так
—exclude-directories=fedora/linux/updates/12/i386,fedora/linux/updates/12/ppc,fedora/linux/updates/12/ppc64
То есть папочки через запитую.

Ждем какое-то время потом делаем следующее. Запускаем createrepo mirror.yandex.ru, в папке где лежит mirror.yandex.ru. Он достаточно долго читает все пакеты и создает реподату. После того как он закончит репозиторием можно пользоваться. Как пользоваться? Есть много вариантов, самые удобные вот такие.

  1. Подключить эту папку по nfs и в /etc/yum.repos.d/fedora.repo прописываем

[fedora]
name=Fedora $releasever — $basearch
failovermethod=priority
baseurl=file:///mnt/nfs/fedora/linux/releases/12/Everything/$basearch/os/
enabled=1
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch

можно поправить еще /etc/yum.repos.d/fedora-updates.repo

далее yum update и процесс пошел.

  1. Все тоже самое только вместо file:/// пишем http:// и поднимаем апач на папку с репозиторием со стандартными настройками, никакой дополнительной настройки там не надо.

PS: Если репозиторий поднимать не на RedHat, то нужно искать createrepo, но не факт, что получится его запустить, я поковырял его на соляре, у меня не получилось, я просто смонтировал по nfs эту папку на Федора и сделал это по nfs. Для того чтобы распаковать rpm нужна утилитка rpm2cpio. Createrepo это питоновый скрипт.