3

yumの更新中に変更されるパッケージのバックアップを作成する方法はありますか?たとえば、yum update lighttpdを実行するときに、yum updateが失敗した場合、または予期しないエラーやバグが発生した場合にlighttpdをバックアップおよび復元する方法はありますか?

4

3 に答える 3

4

4.6.0より前のRPMを使用している場合(新しいバージョンでは削除されています)、この古いチュートリアルまたは機能の説明が記載されたより完全な記事のrpm --rollbackようなメカニズムを使用できます。--rollback機能は、信頼性が低いため削除された自動ソリューションです。

手動ソリューションを使用して、yumを更新するにすべてのパッケージのリストを保持し、次のような--oldpackageを使用して必要な古いrpmを再インストールできますrpm -Uvh --oldpackage foo-1-1.i386.rpm

インストールされているすべてのパッケージのリストをインストール時間でソートするには、次のようにします。

rpm -q -a --queryformat '%{INSTALLTIME} %{NAME}-%{VERSION}-%{RELEASE}\n' | sort -n 

出典

Fedoraを使用している場合は、インストーラーを使用してシステムをアップグレードするための公式ガイドと、システムに現在インストールされているパッケージのリストを作成する方法、およびアップグレード後にほとんどの古いソフトウェアを復元する方法の例を示します。

インストールされているソフトウェア(rpmベースだけでなく)のリストを取得するための一般的なアプローチが必要な場合は、この記事に従うこともできます。

于 2010-06-10T00:41:40.017 に答える
1

リポジトリを使用している場合。古いバージョンをすべて保持しているので、「yum downgrade lighttpd」を実行できます(新しいyumの「yumhistoryundo」を使用)。そうでない場合は、古いrpmのローカルコピーを保持し、「yum downgrade lighttpd * .rpm」を使用できます(ただし、これは注意が必要です)。これによって修正されない問題もある可能性がありますが、それらは非常にまれであり、ダウングレードによって副作用として他の問題が変わる可能性はほとんどありません。

ごく最近、プラグイン「yum-plugin-fs-snapshot」が作成されました。これは、アップグレードを実行する前にFSスナップショット(btrfs、またはLVM)を自動的に取得します...したがって。その後、スナップショットにロールバックできます。ただし、これは大きな変更なので、お勧めしません。

于 2010-06-23T21:07:43.000 に答える
0

etckeeperを使用して、の下のファイルの変更を追跡します/etc。etckeeperは/etcバージョン管理下に置き(Git、Mercurial、Bazaarを含む複数のバージョン管理システムをサポート)、多くのLinuxディストリビューション(APT、YUM、Pacman)のパッケージ管理システムと統合します。

アップグレードなどで何か問題が発生した場合は、何でもロールバックできます。

于 2010-06-13T22:48:52.723 に答える