Сбой программной установки RPM на шаге спецификации

Я делаю RPM. Этот конкретный RPM имеет требования, которые не могут быть выражены как предварительные условия RPM, давайте назовем их конкретной файловой системой/конфигурацией диска. В настоящее время сбой происходит после установки во время выполнения, когда требования не выполняются.

Я могу проверить необходимые предварительные условия в разделе %install моего скрипта. Однако я не могу понять, как завершить установку, если выполняются определенные критерии. Можно ли завершить установку rpm во время выполнения с помощью какого-либо триггера в разделе %install (или другом)?

Пример будет выглядеть примерно так в файле .spec:

%install
if [ -f /some/file ]
then
    FAIL_RPM_INSTALL ## What is this command?
fi

person Paul Rubel    schedule 27.10.2010    source источник


Ответы (2)


Оказывается, если вы выйдете на этапе %pre, установка rpm завершится ошибкой.

%pre
if [ -f /some/file ]
then
    echo "/some/file exists, it shouldn't"
    exit 1
fi

Ссылка: https://fedoraproject.org/wiki/Packaging:ScriptletSnippets

person Paul Rubel    schedule 05.11.2010

person    schedule
comment
awk выдаст неверное значение, если имя file system слишком длинное. Я считаю, что использование df -P позволяет избежать этой проблемы. - person draganHR; 17.08.2015