20

私はrpm-upgradeコマンドで遊んでいますが、rpmには変更された構成ファイルを処理するさまざまな方法があるため、アップグレード中に失われることはありません。私の理解では、構成ファイルが変更され、パッケージがrpm -Uでアップグレードされた場合、rpmは元のプロパティファイルの名前を{file} .rpmsaveに変更し、元のファイル名{file}で新しい構成ファイルをインストールします。

ただし、作成したパッケージでrpm -Uを実行しようとすると、実際に表示されるのは、元の構成ファイルが削除され、新しい構成ファイルの名前が{file}.rpmsaveに変更されていることです。これは意図された動作ですか?インストールスクリプトでは、構成ファイルの一部のテキストも「sed」で変更します。これにより、アップグレード中にrpmが構成ファイルを処理する方法が妨げられた可能性がありますか?

4

1 に答える 1

20

これは意図された動作です。構成ファイルが上書きされないようにする(および.rpmsaveに移動する)場合は、rpm .specファイルの%config(noreplace)代わりにを使用する%configと、ファイルは置き換えられません。代わりに、rpmパッケージからの新しいファイルは.rpmnewとして作成され、そこにあるファイルはそのままになります。

于 2013-01-24T23:50:12.723 に答える