升级

时间:2015-07-24 14:22:07

标签: rpm

tldr;是否有可能强制RPM检查磁盘上的物理文件,以便在升级时进行更改。包含-U?

的包

现状:

  1. 安装rpm a1
  2. 应用程序修改a1。
  3. 中的文件
  4. rpm -V a显示正在修改的文件。
  5. 安装rpm a2(使用-U:Upgrade)。这个rpm主要包含来自a1的相同文件(它是下一个版本,只有一些文件被更改)
  6. rpm -V a表示只有部分文件没有恢复到a2 rpm中的内容。
  7. 我最好的猜测是rpm只比较已经安装的软件包a1中的文件的md5和来自软件包a2的文件,并且只有当md5不匹配时才会查看物理文件。 我如何强制rpm查看所有文件,就像使用-V?

    一样

    修改文件的输出示例:

    / # rpm -V a
    missing   c /xxx/config/xyz.ini
    S.5....T c /xxx/config/foo.xml
    S.5....T c /xxx/config/firmware/xx.cfw
    S.5....T c /xxx/config/bar.txt
    S.5....T c /xxx/config/bar.xml
    

    rpm -qc会列出它们。

1 个答案:

答案 0 :(得分:1)

您描述的行为是RPM规范文件中标记为%config(noreplace)的文件的正确行为。由于该市场营销指示rpm,该文件旨在由用户/ sysadmin修改,并且不应在包升级时自动替换。

我会检查这些文件是否在spec文件中以这种方式列出,以及这是否是这些文件的正确标记。