LINUX.ORG.RU

Установка пакетов из специфического репозитория yum


2

3

Здравствуйте! Меня интересует такой вопрос.

У меня есть свой собственный репозиторий rpm для Centos 6, для которого я собираю пакеты со специфическими настройками и патчами, а так же там у меня есть более свежие пакеты, чем в тех репозиториях, которые у меня подключены для работы (CentOS, CentALT, epel, rpmforge). Сейчас использую плагин для yum - priority, но в связи с тем, что пакетов там всё больше и больше, у меня не хватает времени следить за обновлениями всех пакетов для последующей пересборки, я хочу следующее. Поясню на примере. Нам необходимо переходить на subversion 1.7, который для своей сборки требует более свежие пакеты glib2, пакеты, которых нет в репозиториях gobject-introspection-devel libgnome-keyring и т.д. Их я собрал, положил в свой репозиторий и оно работает. Но, если, к примеру, мне надо что бы пакет nginx всегда ставился из моего репозитория, то другие пакеты, например как subversion, glib2 php-5.4 и куча других, которые просто собраны более свежие чем есть в этих репозиториях, я бы хотел, что бы со временем, когда они подтянутся в этих внешних репозиториях до моих версий ставились бы уже с них.

Т.е. мне надо что то типа глобального игнора для пакета nginx, что бы он ставился всегда с моего репозитория, а другие все остальные - ставились бы более свежие версии со сторонних репозиториев, если там они появятся.

Нашел единственный вариант - это зайти в каждый файл /etc/yum.repos.d/*.repo и написать там exclude=nginx* и отключить плагин приоритетов, но это потом надо будет еще и за ними следить. А я ищу, и пока не могу найти опцию, что бы конкретный пакет, или пакеты ставились бы всегда из одного конкретно указанного репозитория, а в других бы даже не смотрели.

Меня тоже давно интересует такая штука. Ничего лучше exclude= пока не нашёл. Хотелось бы что-нибудь вроде apt pinning'а, но для yum'а...

/me подписался на тему

Deleted ()

Несколько вариантов:

  • Переименовать пакет в custom-%{name}, а %{name} добавить в OBSOLETES или CONFLICTS.
  • Использовать yum-versionlock или глобальный exclude и обновлять пакет руками.
  • Выставить на своем пакете большее значение EPOCH.
amm ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.