TOP ▲ itcore TOPTIPSpkg_diff.php  タグ:linux centos ubunut パッケージ diff

linux 個別にインストールしているパッケージ | itcore 2019年

背景

サーバの移行を行う時に、個別にインストールしているパッケージを調べる。

手順

各サーバで実行
# cd
[centos]
# rpm -qa | grep -o '^[^-]*' | sort | uniq > `hostname`.rpa
[ubuntu]
# dpkg -l | awk '{print $2}' | grep -v '^[^-]*$' | grep -o '^[^-]*' | sort | uniq > `hostname`.pkg

一方のファイルを相手のサーバへコピー(viでコピペ)してdiffをとる。
# diff linux1.pkg erp2.itcore.jp.rpa

linuxのディストリビューションが違うと随分差がでるので、
出来れば同じディストリビューションの同じバージョンを用意して比較したほうが良い。

ubuntu12.04とcentos7
[root@erp2 ~]# diff linux1.pkg erp2.itcore.jp.rpa|wc -l
547
ubuntu12.04とubunut14.04
[root@erp2 ~]# diff linux1.pkg ks2014.pkg|wc -l
185

ubuntu12.04 ubuntu12.04(インストール直後)
[root@erp2 ~]# diff linux1.pkg ubuntu1204.pkg1 |wc -l
142
[root@erp2 ~]# diff linux1.pkg ubuntu1204.pkg1 | grep '<'|wc -l
96

[root@erp2 ~]# diff linux1.pkg ubuntu1204.pkg1 | grep '<'| grep -v '^< lib' | wc -l
27