如何比较安装的rpm和最新的rpm availble在存储库?

时间:2018-02-26 07:57:42

标签: linux centos centos7 centos6

我想找到安装xyz-1.0.rpm&的区别。存储库中最新的xyz-1.1.rpm。还想知道新rpm中发生的任何文件更改。我怎么能这样做?

请帮忙。 感谢

2 个答案:

答案 0 :(得分:2)

  1. 查看更改日志
  2. 您可以查看更改日志文件:

    确保您拥有包yum-plugin-changelog

    然后您可以使用此命令打印xyz包的最后(最新)更改日志消息

    # yum changelog 1 xyz | less
    

    否则你可以使用rpm:

    # rpm -q --changelog -p xyz-1.0.rpm | less
    # rpm -q --changelog -p http://mirror.centos.org/centos/6/os/x86_64/Packages/xyz-1.1.rpm | less
    
    1. 比较文件列表
    2. 列出rpm中的文件:

      下载xyz-1.1.rpm并列出xyz-1.1.txt中的文件

      # rpm -qlp xyz-1.1.rpm > xyz-1.1.txt
      

      然后列出已安装包xyz-1.0.rpm

      的文件
      # rpm -ql xyz > xyz-1.0.txt
      

      最后:

      # diff xyz-1.0.txt xyz-1.1.txt
      

答案 1 :(得分:0)

您可以使用yum check-update检查上述最新版本,并检查已安装的rpm版本:rpm -qa | grep mypackage

接下来,使用yumdownloader获取当前rpm和新rpm的副本(您可能需要使用sudo,因为某些TLS证书只能由root用户访问),例如:

sudo yumdownloader mypackage-current.version
sudo yumdownloader mypackage-latest.version

然后安装pkgdiffsudo yum install pkgdiff并运行它以生成有关差异的HTML报告:

pkgdiff mypackage-current.version mypackage-latest.version