「yumアンインストールパッケージ」が設定ファイルを削除/名前変更するのを防ぎます。

「yumアンインストールパッケージ」が設定ファイルを削除/名前変更するのを防ぎます。

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, -)古代からは必要ありませんでした。おそらく古いチュートリアルで得られたでしょう。ただ削除してください。それは動作しません。

おすすめ記事