RPMパッケージを作成してローカルyumリポジトリにアップロードしました。私(または将来のユーザー)がパッケージの設定ファイルをインストールして編集し、パッケージ(yum remove <package>
)を削除すると、設定ファイルの名前が変更または削除されます。
パッケージ仕様:
%files
%defattr(-, root, root, -)
%dir /etc/something
/etc/something/someA.conf # removed
%config /etc/something/someB.conf # removed
%config(noreplace) /etc/something/someC.conf # renamed => someC.conf.rpmsave
ユーザーがパッケージを削除または更新した場合は、変更された構成ファイルを変更せずに維持したいと思います。どうすればいいですか?ありがとうございます。
答え1
これは不可能です。
%config*
詳細とandのすべての組み合わせについては、*{rpmsave,rpmnew}
以下を参照してください。https://www.cl.cam.ac.uk/~jw35/docs/rpm_config.html
RPM は構成マネージャーではありません。変更されたファイルまたはソースファイルの2つの状態のみを認識します。
構成管理にはAnsibleを使用することをお勧めします。または、rpmconf
コマンドラインからconfアップデートを処理するために使用できます。
注:少しトリッキーです。%defattr(-, root, root, -)
古代からは必要ありませんでした。おそらく古いチュートリアルで得られたでしょう。ただ削除してください。それは動作しません。