共计 1618 个字符,预计需要花费 5 分钟才能阅读完成。
导读 | 当一个程序或库打包成 Deb 或 RPM 软件包后会有一些元数据文件包含在其中,其中之一就是 changelog 文件,它记录了软件包每次更新后发生了什么变化。因此,如果你想找出你安装或更新的软件包发生了什么变化,我们可以查看软件包的更新日志(changelog)。本文将介绍如何查看基于 Debian 系统或红帽系统软件包的更新日志。 |
最新 apt-get 命令可以检查包的更新日志以及该软件包是否以及安装在您的系统。
$ apt-get changelog | more
另一个命令行包管理器 apittude 与 apt-get 具有相同的选项。在 Debian-based 所有发行版上是默认安装的,Ubuntu 桌面版除外。
$ aptitude changelog | more
aptitude 的一大优势在于它有补充基于 ncurses 的用户界面
$ aptitude-curses
可以通过敲打“/”加软件包名字搜索指定的软件包。敲击“C”查看软件包的更新日志
如果你是一个桌面用户,synaptic 有一个额外的选项来查看包的更新日志——Deb 包的图形软件包管理工具。
在 Debian-based 系统上通过以下命令安装 synaptic
$ sudo apt-get install synaptic
synaptic 安装完成并加载之后,在任何一个安装包描述页面点击“Get Changelog”就能查看到软件包的更新日志了。
另一个 GUI 的方法——Software Updater 是特定于 Ubuntu 桌面的,这个 GUI 工具能够提醒任何 Ubuntu 软件的更新及安装。但是要注意的是,这个软件更新器(Software Updater)不能像其他方法一样显示任意包的更新日志。使用以下命令运行 Software Updater
$ update-manager
它能显示将要安装的软件包的更新日志(非下载好的)
检查已经安装好的软件包的更新日志:
$ zless /usr/share/doc/<package -name>/changelog.Debian.gz
$ zless /usr/share/doc/<package -name>/changelog.gz
使用 rpm 命令可以检查任意安装好的软件包。
注:rpm 不能检查未安装在系统上的软件包的更新日志。
$ rpm -q --changelog | more
使用 repoquery 命令可以检查尚未安装在你系统的软件包的更新日志。
安装 repoquery
$ sudo yum install yum-utils
使用 repoquery 命令查看更新日志
$ repoquery --changelog | more
安装 yum-changelog 插件
$ sudo yum install yum-changelog
现在您可以使用 yum 命令在安装包之前 / 之后查看单个包的更新日志
$ yum changelog
这个 changelog 插件有附加选项可以自定义查看更新日志
查看最近的 5 个包的更新日志
$ yum changelog 5
查看自 2015 年 6 月 1 日以来包的更新日志
$ yum changelog "2015-06-01"
所有三种以上方法仍然在 Fedora 上工作,除非你将 dnf 作为默认的软件包管理器。
dnf 暂时还没有提供一个选项来可以检查单个包的更新日志。但你可以使用 dnf 来显示任何重要的 bug 修复、安全补丁和增强 (类似于 Ubuntu 的软件更新) 的更新报告。如下所示
$ dnf updateinfo info | more