Создание локального репозитория CentOS 6.5
Устанавливаем необходимое ПО:
# yum install -y wget rsync createrepo
Создаем папку для хранения пакетов: # mkdir -pv /var/www/html/centos/6.5/{os,updates}/x86_64
Синхронизируем наш репозиторий с репозиторием от яндекса:
rsync -iavrt rsync:mirror.yandex.ru/centos/6.5/os/x86_64/ /var/www/html/centos/6.5/os/x86_64/
rsync -iavrt rsync:mirror.yandex.ru/centos/6.5/updates/x86_64/ /var/www/html/centos/6.5/updates/x86_64/
Поскольку по rsync копируются не только rpm-ки, но и заголовки репозитория, то запуск createrepo выполнять не требуется.
# cd /var/www/html/centos
# wget http://mirror.yandex.ru/centos/RPM-GPG-KEY-CentOS-6
В большинстве статей для создания репозитория исопльзуется сервер Apache. Его относительно долго настраивать. Для старта http сервера python (который входит в число пакетов дистрибутива по умолчанию), достаточно перейти в нужный каталог и выполнить 1 команду:
$ cd /var/www/html/
$ python -m SimpleHTTPServer 80
Подключаемся к серверу по 80 порту и проверяем, все ли работает нормально.
Теперь наш репозиторий необходимо протестировать.
Удаляем старые файлы с описанием репозиториев # rm -rf /etc/yum.repos.d/* Создаем новый файл с описанием репозитория:
# vi /etc/yum.repos.d/my-local-centos.repo
Вставляем в него:
[base]
name=CentOS-$releasever - $basearch - Base
enabled=1
baseurl=http://repo.domain/centos/6.5/os/$basearch/
gpgcheck=1
gpgkey=http://repo.domain/centos/RPM-GPG-KEY-CentOS-6
[update]
name=CentOS-$releasever - $basearch - Updates
enabled=1
baseurl=http://repo.domain/centos/6.5/updates/$basearch/
gpgcheck=1
gpgkey=http://repo.domain/centos/RPM-GPG-KEY-CentOS-6
repo.domain - разумеется должен быть резолвиться в DNS или быть прописан в hosts машины, которую планируется обновлять из этого репозитория.
Запускаем yum list для проверки.
# yum list
Почитать:
http://goodhack.net.ua/archives/320
http://ronix.net.ua/2009/01/centos.html
http://hrafn.me/articles/package-management-in-rhel6-yum/
# yum repolist
# yum clean all
# yum check-update
# yum update
# yum info openssl.x86_64