2

Я ищу помощи от экспертов RPM.

Предположим, у меня есть пакет RPM A который зависит от пакета B RPM A имеет спецификацию Requires:B с autoprov и autoreq .

Когда я устанавливаю RPM A на машину Centos 6.5 с RPM version 4.8.0 , yum install A :

  • Сначала RPM устанавливает A , затем устанавливает B
  • Установка B может частично потерпеть неудачу. То есть, A будет установлен, даже если установка зависимости B не удалась.

Это ожидаемое поведение? (Разве B не должен быть установлен до A?)

Можно ли ожидать того же поведения в разных версиях (например, el5)?

Я надеялся, что зависимости будут установлены до установки основного пакета. Что может помешать установке основного пакета, если не удалось установить одну из зависимостей.

Есть ли другие способы выполнить мое требование?

Благодарю.

1 ответ1

2

Requires сказать, что вам нужна эта зависимость для времени выполнения. Например , если вы поставите Requires в firefox.spec то у вас будет установлена эта зависимость при выполнении команды /usr/bin/firefox

Если вам нужно, чтобы он был доступен во время выполнения скриптлета rpm, вам нужно указать, на каком этапе он вам нужен. Например:

Requires(pre): perl

Если вам это нужно в нескольких разделах, вам нужно перечислить его несколько раз. Например:

Requires(pre): perl
Requires(preun): perl

Для получения дополнительной информации см. Http://rpm.org/api/4.4.2.2/tsort.html.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .