据我记得,由于某种原因,该 Debian Jessie 服务器有sources.list
一段时间有不正确的文件。意思是,它指向较新的版本。但我认为在那段时期安装的软件包并不多。其中一个包是debconf
:
# apt list --installed debconf
debconf/now 1.5.65 all [installed,local]
1.5.56+deb8u1
存储库中存在正确的版本 ( ):
# apt-cache policy debconf
debconf:
Installed: 1.5.65
Candidate: 1.5.65
Version table:
*** 1.5.65 100
100 /var/lib/dpkg/status
1.5.56+deb8u1 500
500 http://deb.debian.org/debian jessie/main amd64 Packages
# apt-cache showpkg debconf | sed -E '/^Reverse Depends:/ q' | egrep '^(Versions:|1.5)'
Versions:
1.5.65 (/var/lib/dpkg/status)
1.5.56+deb8u1 (/var/lib/apt/lists/deb.debian.org_debian_dists_jessie_main_binary-amd64_Packages)
# apt-cache show debconf | egrep '^(Package|Version|Status):'
Package: debconf
Status: install ok installed
Version: 1.5.65
Package: debconf
Version: 1.5.56+deb8u1
# curl -sS http://cdn-fastly.deb.debian.org/debian/dists/jessie/main/binary-amd64/Packages.gz | zcat | sed -nE '/^Package: debconf$/,/^Package:/p' | egrep '^(Package|Version|Filename):' | head -n -1
Package: debconf
Version: 1.5.56+deb8u1
Filename: pool/main/d/debconf/debconf_1.5.56+deb8u1_all.deb
# curl -sS --head -o /dev/null --fail http://cdn-fastly.deb.debian.org/debian/pool/main/d/debconf/debconf_1.5.56+deb8u1_all.deb2; echo $?
0
但它没有安装:
# apt-get install --reinstall debconf
Reading package lists...
Building dependency tree...
Reading state information...
Reinstallation of debconf is not possible, it cannot be downloaded.
0 upgraded, 0 newly installed, 0 to remove and 79 not upgraded.
有没有办法让它在不升级到 Stretch 或更高版本的情况下工作?
答案1
你可以尝试apt-get install debconf=1.5.56+deb8u1
,但如果多个软件包升级到jessie之外,你可能很难恢复纯jessie系统,因为一般不支持降级。不过,您可以通过将 jessie 存储库的优先级设置为 1000 以上来强制进行大规模降级。