Создание репозитория CentOS/RHEL
В данной статье описывается процесс создания локального репозитория CentOS/RHEL.
Создание репозитория CentOS/RHEL.
Для создания локального репозитория можно использовать два варианта:
- Создать iso-образ установочного диска CentOS/RHEL, затем примонтировать данный образ в директорию и настроить файл локального репозитория;
- Создать директорию, в которую будут скопированы rpm-пакеты с установочного диска, настроить файл локального репозитория.
Опишем последовательность действий развёртывания локального репозитория для этих вариантов.
Вариант 1)
- Под пользователем root узнаём путь примонтированного к системе установочного образа:
#blkid
Вывод blkid, представленный на рисунке выше, показал, что установочный iso-образ CentOS 7 примонтирован в устройство /dev/sr0.
Следует принять во внимание, что для образа с RHEL данная строка будет иметь другой вид!
- Создаём iso-образ в корневой директории, используя утилиту dd:
# dd if=/dev/sr0 of=/repo.iso
- Создаём директорию repository в /usr/share:
# mkdir -p /usr/share/repository/
- Отредактируем файл /etc/fstab, внеся в него информацию для мон-тирования образа:
# echo "/repo.iso /usr/share/repository auto loop 0 0 " >> /etc/fstab
Перезагрузим хост и проверим, что содержимое iso-образа располагается /usr/share/repository/
- Предварительно создаём резервные копии файлов, а затем удаляем содержимое директории /etc/yum.repos.d:
# rm -rf /etc/yum.repos.d/*
- В директории /etc/yum.repos.d создадим файл repolocal.repo:
# cd /etc/yum.repos.d && touch repolocal.repo
- Отредактируем файл repolocal.repo, используя следующие команды:
# echo "[Centos]" >> /etc/yum.repos.d/repolocal.repo
# echo "name=ISO" >> /etc/yum.repos.d/repolocal.repo
# echo "baseurl=file:///usr/share/repository" >> /etc/yum.repos.d/repolocal.repo
# echo "enabled=1" >> /etc/yum.repos.d/repolocal.repo
# echo "gpgcheck=0" >> /etc/yum.repos.d/repolocal.repo
- Проверяем доступность пакетов для установки следующей командой:
# yum list
Теперь можно инсталлировать пакет используя yum.
Вариант 2)
- Создаём директорию repository в /usr/share:
# mkdir -p /usr/share/repository/
- Из примонтированного установочного iso-образа скопируем все rpm-пакеты в /usr/share/repository/:
# cp /mnt/Packages/* /usr/share/repository/
- Предварительно создаём резервные копии файлов, а затем удаляем содержимое директории /etc/yum.repos.d:
# rm -rf /etc/yum.repos.d/*
- В директории /etc/yum.repos.d создадим файл repolocal.repo:
# cd /etc/yum.repos.d && touch repolocal.repo
- Отредактируем файл repolocal.repo, используя следующие команды:
# echo "[Centos]" >> /etc/yum.repos.d/repolocal.repo
# echo "name=ISO" >> /etc/yum.repos.d/repolocal.repo
# echo "baseurl=file:///usr/share/repository" >> /etc/yum.repos.d/repolocal.repo
# echo "enabled=1" >> /etc/yum.repos.d/repolocal.repo
# echo "gpgcheck=0" >> /etc/yum.repos.d/repolocal.repo
- В окне терминала выполняем следующие команды:
# cd /usr/share/repository
# rpm -i deltarpm-3.5-*
# rpm -i python-deltarpm-3.5-*
# rpm -Uvh createrepo-*
# createrepo .
- Переходим в каталог /etc/yum.repos.d и выполняем следующие команды:
# cd /etc/yum.repos.d
# yum clean all
# yum update
Теперь можно инсталлировать пакет используя yum.