マジで良く忘れるので書いておく。主な用途としては、パッケージバージョンを同じにしたいとき。調査検証するとき用。
まず sosreport の installed-rpms
とか rpm
コマンドで以下の様なファイルを作っておく。
Deployment_Guide-ja-JP-5.8-1.el5.centos.noarch
GConf2-2.14.0-9.el5.i386
ImageMagick-6.2.8.0-12.el5.i386
MAKEDEV-3.23-1.2.i386
NetworkManager-0.7.0-13.el5.i386
~~ 以下略 ~~
読み込ませつつ、完全なバージョン指定でインストール。
# yum install $(<installed-rpms.txt) -y
ちなみに xargs
で渡しても良い。
# cat installed-rpms.txt | xargs yum install -y
最後に diff して余分なパッケージは取り除いておく。
ちなみに el5 系で rpm -qa | sort
とかした場合 %{ARCH}
とか足りない場合があるので、以下で対応する。
# rpm -qa --qf="%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n"|sort