Pawan Neupane Asked: 2010-12-16 09:52:46 +0800 CST2010-12-16 09:52:46 +0800 CST 2010-12-16 09:52:46 +0800 CST 这些 apt 命令有什么作用? 772 这些命令有什么作用? Acquire::http::No-Cache=True -o Acquire::BrokenProxy=true update Acquire::http::Max-Age "0" repository apt update-manager proxy cache 2 个回答 Voted karthick87 2010-12-16T10:52:13+08:002010-12-16T10:52:13+08:00 以下命令,Acquire::http::No-Cache=True -o 它为 APT http 请求添加了一个 No-Cache 标头。 我猜这个命令Acquire::BrokenProxy=true update 用于修复你的本地代理。 此命令Acquire::http::Max-Age "0" 保留包裹的最长时间。 interfect 2022-05-11T17:38:31+08:002022-05-11T17:38:31+08:00 我不能说其他选择。 但是,截至今天,Acquire::BrokenProxy什么也没做。最迟自 2011 年以来,它什么也没做。在发布此问题时,它在当前的 Ubuntu 版本中没有任何作用。如果您在手册页中查找它apt.conf,它不存在。如果您在apt源代码中查找它,它不存在。它并没有完全使用正则表达式来解析 HTML,但它绝对不会解决您的问题,任何人都不应该使用它。 在 2005 年 4 月 1 日星期五晚上 10 点 59 分(世界标准时间)和 2006年2 月 20 日星期一晚上 8 点 38 分(世界标准时间不得不放下它,设置Acquire::BrokenProxy将强制 APT 总是重新下载包存储库的签名文件,而不是在它被修改时要求发送它。这大概是因为一些“损坏”的代理只是发送了旧版本的文件,即使它已经改变了。 据我所知,这就是它所做的一切。您可以在那里找到向/从 APT 源代码添加git clone https://salsa.debian.org/apt-team/apt.git和git log -S "BrokenProxy"删除此字符串的提交;我只数这两个。 此功能首先出现在 APT 版本中0.6.35ubuntu1,并且最后在 APT 版本中可用0.6.43.3,根据这些提交时更改日志文件的状态。挖掘http://old-releases.ubuntu.comPackages.gz上的文件,看起来它应该对Ubuntu 5.04 (Hoary Hedgehog)、Ubuntu 5.10 (Breezy Badger)和Ubuntu 6.06 LTS (Dapper Drake)产生影响(其中有)。6.06 版是 2011 年停止支持的 LTS 版本。2011 年之后,或者在任何 6.10 (Edgy Eft) 的 Ubuntu 上,使用 apt或更高版本,没有人使用此选项进行任何业务。0.6.40.1ubuntu90.6.45ubuntu14 然而,直到今天Acquire::BrokenProxy仍然是一个流行的apt.conf选择。它在 2005 年 12 月开始不起眼,当时它的作者在关于 BADSIG 错误的 Ubuntu 错误报告中建议将其作为一种故障排除方法。在接下来的几年里,许多迷失的灵魂找到了这个错误报告的途径,其中一些人试图传递-o Acquire::BrokenProxy=true给他们的包管理器,因为 2006 年一位用户报告说它对他们有用。尽管随后有一些报道称该选项没有帮助(并且,根据 Ubuntu 版本,很可能不再有帮助),但在 2009-2010 年,该选项在博客和论坛上传播开来,到 2012 年它又被发布到BADSIG 错误作为行为不端代理的“修复”的一部分。 2013 年,两大技术出现,彻底改变了计算:Docker 容器管理系统和APT99fixbadproxy配置文件: Acquire::http::Pipeline-Depth "0"; Acquire::http::No-Cache=True; Acquire::BrokenProxy=true; 很快,人们开始将这两种技术的力量结合起来,大概是因为 Docker 镜像构建是一种apt压力测试,而其他两个选项实际上做了一些有用的事情。今天,99fixbadproxy这个选项在任何作为 Docker 映像可用的 Ubuntu 版本中都没有任何影响,现在可以在 Github 上的 Dockerfiles 中找到该文件。它甚至已经成为 Github 本身的一部分:如果您使用 Github Actions 在 Ubuntu 上运行任务,您的 Ubuntu 机器将Acquire::BrokenProxy通过99fixbadproxy-descendant进行配置。 确实,不能低估Acquire::BrokenProxy期权的力量。它是完全惰性的,它附加到可能有助于解决间歇性故障的其他代码,也可能不会帮助解决间歇性故障,而且它看起来很合理,几乎没有人,除了目前的公司,曾经想过质疑它的存在。
以下命令,
Acquire::http::No-Cache=True -o
它为 APT http 请求添加了一个 No-Cache 标头。我猜这个命令
Acquire::BrokenProxy=true update
用于修复你的本地代理。此命令
Acquire::http::Max-Age "0"
保留包裹的最长时间。我不能说其他选择。
但是,截至今天,
Acquire::BrokenProxy
什么也没做。最迟自 2011 年以来,它什么也没做。在发布此问题时,它在当前的 Ubuntu 版本中没有任何作用。如果您在手册页中查找它apt.conf
,它不存在。如果您在apt
源代码中查找它,它不存在。它并没有完全使用正则表达式来解析 HTML,但它绝对不会解决您的问题,任何人都不应该使用它。在 2005 年 4 月 1 日星期五晚上 10 点 59 分(世界标准时间)和 2006年2 月 20 日星期一晚上 8 点 38 分(世界标准时间不得不放下它,设置
Acquire::BrokenProxy
将强制 APT 总是重新下载包存储库的签名文件,而不是在它被修改时要求发送它。这大概是因为一些“损坏”的代理只是发送了旧版本的文件,即使它已经改变了。据我所知,这就是它所做的一切。您可以在那里找到向/从 APT 源代码添加
git clone https://salsa.debian.org/apt-team/apt.git
和git log -S "BrokenProxy"
删除此字符串的提交;我只数这两个。此功能首先出现在 APT 版本中
0.6.35ubuntu1
,并且最后在 APT 版本中可用0.6.43.3
,根据这些提交时更改日志文件的状态。挖掘http://old-releases.ubuntu.comPackages.gz
上的文件,看起来它应该对Ubuntu 5.04 (Hoary Hedgehog)、Ubuntu 5.10 (Breezy Badger)和Ubuntu 6.06 LTS (Dapper Drake)产生影响(其中有)。6.06 版是 2011 年停止支持的 LTS 版本。2011 年之后,或者在任何 6.10 (Edgy Eft) 的 Ubuntu 上,使用 apt或更高版本,没有人使用此选项进行任何业务。0.6.40.1ubuntu9
0.6.45ubuntu14
然而,直到今天
Acquire::BrokenProxy
仍然是一个流行的apt.conf
选择。它在 2005 年 12 月开始不起眼,当时它的作者在关于 BADSIG 错误的 Ubuntu 错误报告中建议将其作为一种故障排除方法。在接下来的几年里,许多迷失的灵魂找到了这个错误报告的途径,其中一些人试图传递-o Acquire::BrokenProxy=true
给他们的包管理器,因为 2006 年一位用户报告说它对他们有用。尽管随后有一些报道称该选项没有帮助(并且,根据 Ubuntu 版本,很可能不再有帮助),但在 2009-2010 年,该选项在博客和论坛上传播开来,到 2012 年它又被发布到BADSIG 错误作为行为不端代理的“修复”的一部分。2013 年,两大技术出现,彻底改变了计算:Docker 容器管理系统和APT
99fixbadproxy
配置文件:很快,人们开始将这两种技术的力量结合起来,大概是因为 Docker 镜像构建是一种
apt
压力测试,而其他两个选项实际上做了一些有用的事情。今天,99fixbadproxy
这个选项在任何作为 Docker 映像可用的 Ubuntu 版本中都没有任何影响,现在可以在 Github 上的 Dockerfiles 中找到该文件。它甚至已经成为 Github 本身的一部分:如果您使用 Github Actions 在 Ubuntu 上运行任务,您的 Ubuntu 机器将Acquire::BrokenProxy
通过99fixbadproxy
-descendant进行配置。确实,不能低估
Acquire::BrokenProxy
期权的力量。它是完全惰性的,它附加到可能有助于解决间歇性故障的其他代码,也可能不会帮助解决间歇性故障,而且它看起来很合理,几乎没有人,除了目前的公司,曾经想过质疑它的存在。