当前位置: 主页 > CentOS教程 > 软件安装教程 >

Linux上如何查看Deb和RPM软件包的更新日志

时间:2016-04-12 22:24来源:未知 作者:ronny 举报 点击:
导读 当一个程序或库打包成Deb或RPM软件包后会有一些元数据文件包含在其中,其中之一就是 changelog文件,它记录了软件包每次更新后发生了什么变化。因此,如果你想找出你安装或更新的软件包发生了什么变化,我们可以查看软件包的更新日志(changelog)。本文将介绍如何查看基于Debian系统或红帽系统软件包的更新日志。
查看Deb软件包更新日志
方法一:apt-get 或 aptitude

最新apt-get命令可以检查包的更新日志以及该软件包是否以及安装在您的系统。

$ apt-get changelog  | more 

apt-get

另一个命令行包管理器apittude与apt-get具有相同的选项。在Debian-based所有发行版上是默认安装的,Ubuntu桌面版除外。

$ aptitude changelog  | more 

aptitude的一大优势在于它有补充基于ncurses的用户界面

$ aptitude-curses 

可以通过敲打“/”加软件包名字搜索指定的软件包。敲击“C”查看软件包的更新日志
aptitude

方法二:synaptic

如果你是一个桌面用户,synaptic有一个额外的选项来查看包的更新日志——Deb包的图形软件包管理工具。
在Debian-based系统上通过以下命令安装synaptic

$ sudo apt-get install synaptic 

synaptic安装完成并加载之后,在任何一个安装包描述页面点击“Get Changelog”就能查看到软件包的更新日志了。
Synaptic

方法三(在Ubuntu上):Software-Updater

另一个GUI的方法——Software Updater是特定于Ubuntu桌面的,这个GUI工具能够提醒任何Ubuntu软件的更新及安装。但是要注意的是,这个软件更新器(Software Updater)不能像其他方法一样显示任意包的更新日志。使用以下命令运行Software Updater

$ update-manager 

它能显示将要安装的软件包的更新日志(非下载好的)
update-manager

方法四: /usr/share/doc

检查已经安装好的软件包的更新日志:

$ zless /usr/share/doc/<package -name>/changelog.Debian.gz
$ zless /usr/share/doc/<package -name>/changelog.gz 
查看RPM包的更新日志
方法一:rpm

使用rpm命令可以检查任意安装好的软件包。
注:rpm不能检查未安装在系统上的软件包的更新日志。

$ rpm -q --changelog  | more 

rpm

方法二:Repoquery

使用repoquery命令可以检查尚未安装在你系统的软件包的更新日志。
安装repoquery

$ sudo yum install yum-utils 

使用repoquery命令查看更新日志

$ repoquery --changelog  | more 
方法三:yum-changelog

安装yum-changelog插件

$ sudo yum install yum-changelog

现在您可以使用yum命令在安装包之前/之后查看单个包的更新日志

$ yum changelog  

这个changelog插件有附加选项可以自定义查看更新日志
查看最近的5个包的更新日志

$ yum changelog 5  

查看自2015年6月1日以来包的更新日志

$ yum changelog "2015-06-01"  

yum-changelog

方法四(在Fedora上):dnf

所有三种以上方法仍然在Fedora上工作,除非你将dnf作为默认的软件包管理器。
dnf暂时还没有提供一个选项来可以检查单个包的更新日志。但你可以使用dnf来显示任何重要的bug修复、安全补丁和增强(类似于Ubuntu的软件更新)的更新报告。如下所示

$ dnf updateinfo info | more 

dnf

原文转载地址( linux 就该这么学): http://www.linuxprobe.com

译者:烨子

------分隔线----------------------------
发表评论
为了和诣的生活,我关闭了评论页面,请大家到QQ群里交流吧:348944156,也欢迎关注本站微信公众号:centoscn