/var/lib/dpkg/status 文件作为包的存储库

/var/lib/dpkg/status 文件作为包的存储库

当我执行时apt-show-versions,我会看到几十个带有No available version in archive状态的包。例如:

# apt-show-versions -a -p ffmpeg
ffmpeg:i386 6:0.8.17-1 install ok installed
No stable version
ffmpeg:i386 6:0.8.17-1 installed: No available version in archive
# 

所有这些包的共同点是它们都具有/var/lib/dpkg/status唯一可用的存储库。例如:

# apt-cache policy ffmpeg
ffmpeg:
  Installed: 6:0.8.17-1
  Candidate: 6:0.8.17-1
  Version table:
 *** 6:0.8.17-1 0
        100 /var/lib/dpkg/status
# 

即使软件包的版本在存储库列表中可用,也会/var/lib/dpkg/status作为优先级较低的存储库:

# apt-cache policy tcpdump
tcpdump:
  Installed: 4.6.2-5+deb8u1
  Candidate: 4.6.2-5+deb8u1
  Version table:
 *** 4.6.2-5+deb8u1 0
        500 http://http.debian.net/debian/ jessie/main i386 Packages
        100 /var/lib/dpkg/status
# 

为什么 /var/lib/dpkg/status 文件被列为包的存储库?

答案1

我希望我能很好地理解。这是您的系统上存在特定版本的信息。

例如

$ LANG=C apt-cache policy k3b
k3b:
  Installed: (none)
  Candidate: 2.0.2-8
  Version table:
     2.0.2-8 0
        500 http://http.us.debian.org/debian/ jessie/main amd64 Packages

我的系统上没有 k3b,所以我的状态文件中没有任何内容。它们在您的源中没有可用的 ffmpeg 包。我有向后移植和 deb-多媒体。

     LANG=C apt-cache policy ffmpeg
ffmpeg:
  Installed: 10:2.6.9-dmo1
  Candidate: 10:2.6.9-dmo1
  Version table:
 *** 10:2.6.9-dmo1 0
        300 http://www.deb-multimedia.org/ jessie/main amd64 Packages
        100 /var/lib/dpkg/status
     7:3.2-2~bpo8+2 0
        100 http://http.us.debian.org/debian/ jessie-backports/main amd64 Packages



LANG=C  cat /var/lib/dpkg/status | egrep "Package: ffmpeg"-A9
Package: ffmpeg
Status: install ok installed
Priority: optional
Section: graphics
Installed-Size: 1951
Maintainer: Christian Marillat <[email protected]>
Bugs: mailto:[email protected]
Architecture: amd64
Source: ffmpeg-dmo
Version: 10:2.6.9-dmo1

状态文件中也有您的版本。

apt-show-versions 解析 dpkg 状态文件和 /var/apt/lists 中的文件。看来你已经从喘息升级为杰西了。以及您系统上 wheezy 的一些软件包。

我不太擅长用英语解释。我希望它是可以理解的

相关内容