如何在 Linux 上检查软件包的变更日志如何在 Linux 上检查软件包的变更日志如何在 Linux 上检查软件包的变更日志如何在 Linux 上检查软件包的变更日志
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Linux 上检查软件包的变更日志

问题:当我在 Linux 上安装或升级软件包时,我想了解在安装之前或之后软件包中进行了哪些更改(例如,新功能或错误修复)。如何在 [Debian、Ubuntu、CentOS、Fedora] 上查看 (Deb/RPM) 软件包的变更日志?

当程序或库打包为 Deb 或 RPM 包进行分发时,包中会包含多个元数据文件。其中之一是 changelog 文件,它按时间倒序记录每次更新包时发生的更改。

因此,如果您想了解对即将安装或已安装的软件包进行了哪些更改,您可以查看该软件包的changelog。 changelog 对于检查软件包是否包含针对最新发现的漏洞的安全补丁也很有用。以下是如何在基于 Debian 或基于 Red-Hat 的 Linux 上检查变更日志。

查看 Deb 包的变更日志

有多种方法可以在基于 Debian 的 Linux 上查看(已安装或已卸载)Deb 软件包的变更日志。

方法一:apt-get 或 aptitude

最新的 apt-get 允许您检查软件包的更改日志,无论它是否安装在您的系统上。


$ apt-get changelog <package-name> | more

aptitude 是另一个命令行包管理器,它具有与 apt-get 相同的选项来显示包的更改日志。 aptitude 预装在除 Ubuntu 桌面版之外的所有基于 Debian 的发行版上。


$ aptitude changelog <package-name> | more

aptitude 的一个好处是它可以通过基于 ncurses 的用户界面进行补充。

要打开 ncurses-enhanced aptitude:


$ aptitude-curses

要在 aptitude-curses 上搜索特定包,请按 / 并输入其名称。在软件包的描述页面上,按 C 查看其变更日志。

方法二:突触

如果您是基于 Debian/Ubuntu 的系统上的桌面用户,查看软件包的 changelog 的另一个选项是通过 synaptic,它是 Deb 软件包的图形软件包管理工具。

您可以使用以下命令将其安装在基于 Debian 的系统上:


$ sudo apt-get install synaptic

启动 synaptic 后,您可以通过单击任何软件包描述页面上的获取变更日志按钮轻松检查变更日志。

方法三(特定于 Ubuntu):软件更新程序

另一种特定于 Ubuntu 桌面的 GUI 方法是通过软件更新程序。该 GUI 工具会提醒您任何新的 Ubuntu 软件更新,并根据您的命令安装它们。您可以使用软件更新程序来检查任何要安装的软件中所做的更改。请注意,软件更新程序无法像所有其他方法那样显示任何任意软件包的更改日志。

一旦启动:


$ update-manager

它可以显示要安装(但尚未下载)的软件包的changelog。

方法四:/usr/share/doc

如果您想检查任何已安装软件包的changelog,您只需读取系统上安装的changelog文件即可,如下所示。


$ zless /usr/share/doc/<package-name>/changelog.Debian.gz
$ zless /usr/share/doc/<package-name>/changelog.gz

查看 RPM 包的变更日志

有多种方法可以在基于 CentOS/RHEL/Fedora 的 Linux 上查看(已安装或已卸载)RPM 软件包的更改日志。

方法一:rpm

如果您想检查任何已安装软件包的changelog,您可以使用rpm命令,如下所示。


$ rpm -q --changelog <package-name> | more

方法二:repoquery

如果您想检查系统上未安装的软件包的changelog,则不能使用rpm 命令。相反,您可以使用 repoquery 命令,无论是否安装了软件包,该命令都将起作用。您可以使用以下命令安装repoquery:


$ sudo yum install yum-utils

要使用 repoquery 查看任意包的 changelog:


$ repoquery --changelog <package-name> | more

方法三:yum-changelog

查看包的 changelog 的另一种方法是通过 yum 的 changelog 插件。按如下方式安装插件。


$ sudo yum install yum-changelog

现在,您可以使用 yum 命令在安装之前/之后查看各个软件包的变更日志。


$ yum changelog <package-name>

changelog 插件具有用于自定义更改日志视图的附加选项。例如:

要查看软件包的 5 个最新变更日志:


$ yum changelog 5 <package-name>

要查看自 2015/06/01 以来软件包的所有变更日志:


$ yum changelog "2015-06-01" <package-name>

方法四(Fedora 特定):dnf

上述所有三种方法仍然适用于 Fedora,但如果您已切换到 dnf 作为默认包管理器,则需要安装 yum。

截至撰写本文时,dnf 尚未提供检查各个软件包的changelog 的选项。您可以使用 dnf 做的一件事是显示任何关键错误修复、安全补丁和增强功能的更新建议(类似于 Ubuntu 的软件更新程序)。要查看此类关键更新的变更日志,请运行:


$ dnf updateinfo info | more
©2015-2025 艾丽卡 support@alaica.com