Как установить дополнительные файлы конфигурации в файле 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, и файл может потребоваться удаляется при удалении этого пакета. Этот файл не обязательно должен существовать во время установки или удаления.