openSUSEの他のコンピュータにまったく同じパッケージをインストールするにはどうすればよいですか?

openSUSEの他のコンピュータにまったく同じパッケージをインストールするにはどうすればよいですか?

他のコンピュータも仮想マシンである可能性があります。ハードウェアの違いや設定により、ディスクの複製はできません。

コンピュータAがインストールされ実行されており、コンピュータBもあります。 Bにも同じオペレーティングシステムをインストールする予定なので、同じ基本システムを使用します。

次に、Aと同じリポジトリを手動で追加します。

しかし、最後のステップは私の範囲外です。 Aと同じパッケージをインストールする方法は?パッケージ名だけでなくバージョンも一致する必要があります。

もちろん、手動で1つずつインストールするのではなく、自動化された方法を探しています。

現実的には、完全に異なるハードウェア構成、きちんとした設定(以前のパスワードなどなし)を取得する必要がありますが、ソフトウェアの選択は同じでなければなりません。

質問

どうすればいいですか?

背景

パッケージ(バージョン別)を使用できますが、最新ではありません。このタスクの目的は、実行中のシステムの「コピー」を作成し、コンピュータB(コピー)からパッケージをアップグレードし、動作しているかどうかをテストし、その場合はAをアップグレードすることです。新しいOSバージョンが登場するたびに、多くの回帰バグに遭遇するため、リアルタイムでテストしてパニックに陥るのではなく、テストに体系的にアクセスする必要があります。

SUSE 11.4を開く

答え1

独自のリポジトリを構築する必要があるようです。

必要なRPMバージョンをこのリポジトリに入れます。次に、両方のシステムでこれらのリポジトリをインストールソースとしてアクティブにし、パッケージをインストールします。

答え2

OpenSuseはRPMを使用しているため、このユーティリティを使用できますrpm

rpm -qa現在システムにインストールされているすべてのパッケージを一覧表示します(非常に長いリスト)。リストにはパッケージ名、バージョン番号、アーキテクチャが含まれます。リストをファイルに書き込み、そのファイルを新しいシステムのzypperに供給できます。

既定では、複数のパッケージがすでにインストールされている可能性がありますが、zypperはそのパッケージをスキップして必要なパッケージをインストールします。

答え3

次の「複製」を作成するシステムにインストールされているすべてのパッケージとそのバージョンを一覧表示することから始めますrpm -qa > /tmp/rpm.list.txt

/tmp/rpm.list.txt次に、別のシステムの「コピー」に変換したいシステムにコピーし、zypperを実行し、作成したばかりのパッケージのリストを提供します。 (zypper install $(cat /tmp/rpm.list.txt)またはソースシステムのパッケージリストを含むファイルを任意の場所に配置します。)

関連情報