Как установить дополнительные файлы конфигурации в файле RPM SPEC?

Есть ли способ пометить файл конфигурации как необязательный, чтобы при запуске проверки (rpm -v) он игнорировал отсутствующий файл конфигурации?


У меня есть пакет RPM, в который я включаю файл конфигурации по умолчанию для своего приложения. Файл конфигурации не требуется для моего приложения, но я хотел бы включить его для упрощения настройки. Если файл был удален, приложение будет работать должным образом (с некоторыми внутренними настройками по умолчанию). Проблема, с которой я сталкиваюсь, заключается в том, что, если я удаляю свой файл конфигурации и затем запускаю проверку на моем установленном RPM, RPM указывает, что пакет не в хорошем состоянии:

об / мин -V тест-об / мин

(выходы)

отсутствует c /etc/test/test.conf

Минимизированное определение SPEC:

Version:    0.0.1
Name:       test-rpm

...

%install
install -m 644 $resource_directory/test.conf %{buildroot}/etc/test/test.conf

 ...

%files
%defattr(-,root,root)
%config(noreplace) /etc/test/test.conf

 ...

Есть ли какой-то вариант, который я еще не нашел, или я что-то неправильно понимаю в RPM?

1 ответ

Решение

Это то, что %config(missingok) это я верю.

% Config(отсутствующий) указывает, что файл не должен существовать на установленном компьютере. % Config(missingok) часто используется для файлов, таких как /etc/rc.d/rc2.d/S55name, где (не) существование символической ссылки является частью конфигурации в%post, и файл может потребоваться удаляется при удалении этого пакета. Этот файл не обязательно должен существовать во время установки или удаления.

Другие вопросы по тегам