Работа с репозиториями

Andy

Well-Known Member
Работа с репозиториями:

Добавление репозитория​


Для этого необходимо создать файл с расширением repo в директории /etc/yum.repos.d, например:

/etc/yum.repos.d/myrepo.repo

[myrepo]
name=My repo
baseurl=file:///var/install/myrepo
enabled=1
gpgcheck=0

где:

name - описание репозитория
baseurl - url репозитория. Формат:


file:///path_to_my_repo
enabled - включен/отключен
gpgcheck - проверка GPG-подписи пакетов

Отключение репозитория​


В соответствующем конфигурационнном файле репозитория измените:

enabled=1
на

enabled=0

Создание локального репозитория​


Создание директории, в которой будут храниться необходимые пакеты
mkdir -p /var/install/myrepo
Вместо /var/install/myrepo вы можете выбрать любую другую директорию, исходя из структуры разделов вашего жесткого диска.
Далее копируем в неё пакеты, с которыми вы хотите работать.
Хорошим примером будут все пакеты из 2-х дисков обновлений от ASPLinux или пакеты установочных дисков.

Использование пакетов, хранящихся на dvd или в iso-образах​

Если по каким-либо причинам вы не хотите копировать пакеты с дисков (например, у вас на файловой системе есть iso-образы дисков или dvd), создать локальный репозиторий можно следующими способами:

с помощью символических ссылок
с помощью опции --outputdir команды createrepo
1. Монтируем dvd с пакетами (для примера dvd монтируется в /media/dvdrom):

mount /media/dvdrom
или его iso-образ:

mkdir -p /media/iso
mount -t iso9660 -o loop /path/to/image.iso /media/iso

2. Создаём символические ссылки пакетов из подмонтированного диска:

ln -s /media/dvdrom/ASPlinux/RPMS/*.rpm /var/install/myrepo
или его iso-образа:

ln -s /media/iso/ASPlinux/RPMS/*.rpm /var/install/myrepo
В этом случае пользоваться созданным репозиторием можно только при подмонтированных ресурсах. Для автоматического монтирования этих ресурсов при загрузке операционной системы добавьте соответсвующие строки в файл /etc/fstab (не рекомендуется для сменных носителей).

если выдает ошибку

# ln -s /media/iso/ASPlinux/RPMS/*.rpm /var/install/myrepo
... слишком длинный список аргументов
можно сделать символические ссылки в несколько подходов:

ln -s /media/iso/ASPlinux/RPMS/[a-m]*.rpm /var/install/myrepo
ln -s /media/iso/ASPlinux/RPMS/[n-z]*.rpm /var/install/myrepo

Cоздание репозитория пакетов​

createrepo /var/install/myrepo
createrepo входит в состав пакета createrepo
 
Верх