如何解密软件包版本信息?

如何解密软件包版本信息?

这些数字是什么意思?看一下来自 aptitude 的具体例子:

chromium-codecs-ffmpeg-extra could be upgraded to version                     
31.0.1650.63-0ubuntu0.13.10.1~20131204.1, but it is being held at version     
30.0.1599.114-0ubuntu0.13.10.2.              

为什么这么多数字?我怎么知道我是否应该升级?我最不想做的就是阻止将来的升级,因为较新的软件可能需要较旧的软件包。我不记得持有这个软件包和其他软件包。

答案1

技术上:

31.0.1650.63-0ubuntu0.13.10.1~20131204.1
|----------| | |----|
  Upstream   |    |
  version    |    |
          Debian  |
          version |
               Ubuntu
               Versioning

这些涵盖了基本内容,但是接下来的数字呢?

  • 13.10Ubuntu 的版本,因为不同版本的 Ubuntu 软件包编译方式完全不同,如果镜像中的名称相同,就会发生冲突。这些软件包是该版本 Ubuntu 独有的。
  • .1表示这是该包的第一个版本。
  • ~20131204是包的构建日期。
  • 第二种.1情况是,以防同一天构建两次包。

那么,为什么版本号这么复杂呢?因为 Chrome/ium 是单独编译的,但在 Ubuntu 的所有版本上都必须具有相同的版本,为了区分它们,所有软件包管理器都使用这种过于复杂的版本号。

我不记得拿过这个包裹和其他包裹。

在这种情况下,“held” 有另一种含义。它被 held 是因为如果 apt 升级,它将破坏依赖关系。这种情况通常可以通过升级两个软件包或使用高级解析器(如 )来解决aptitude

相关内容