apt 用于更新软件包列表的实际索引文件在哪里?

apt 用于更新软件包列表的实际索引文件在哪里?

我试图安装 yelp-tools。我运行了 sudo apt-get update && sudo apt-get upgrade,然后运行了 sudo apt-get install yelp-tools,但失败了,如下所示:

E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/universe/libx/libxml2/python3-libxml2_2.9.13%2bdfsg-1ubuntu0.2_amd64.deb  404  Not Found [IP: 91.189.91.38 80]

sudo apt-get install --fix-missing yelp-tools返回相同的错误。

在 repo 中查找:没有 libxml2_2.9.13%2bdfsg-1ubuntu0.2_amd64.deb 的软件包

而是:libxml2_2.9.13%2bdfsg-1ubuntu0.3_amd64.deb

我怀疑在某个地方,有一个包裹列表指向一个由于拼写错误而不存在的包裹。

存储库的索引文件在哪里 http://security.ubuntu.com/ubuntu jammy-security universe

apt-get update 更新软件包索引文件。这些索引文件到底在哪里?我认为其中一个文件有拼写错误。

问题继续存在,但都是相同类型的错误。我安装了较新的 libxml2_2.9.13%2bdfsg-1ubuntu0.3_amd64.deb 包,然后安装了 yelp-tools,它工作正常。但我认为包索引中一定有错误,我应该联系某人吗?我该如何验证?

答案1

实际索引 URL 列在您的apt update输出中。

以下是 23.04 中的一个例子:

$ sudo apt update
[sudo] password for the_admin: 
Hit:1 http://us.archive.ubuntu.com/ubuntu lunar InRelease
Get:2 http://us.archive.ubuntu.com/ubuntu lunar-updates InRelease [90.7 kB]
Get:3 http://security.ubuntu.com/ubuntu lunar-security InRelease [90.7 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu lunar-updates/main amd64 Packages [13.9 kB]

让我们深入研究第一行:

http://us.archive.ubuntu.com/ubuntu lunar InRelease
--becomes--
http://us.archive.ubuntu.com/ubuntu/dists/lunar/InRelease

打开该 URL 会显示实际的包索引。

相关内容