答案1
深入研究代码后...
分阶段更新由文件实现/usr/lib/python3/dist-packages/UpdateManager/Core/UpdateList.py
,该文件由包提供python3-update-manager
。查看第 185 行和第 360 行。实际的 Python 代码是apt.apt_pkg.config.find_b()
,它会在所有 apt 配置中进行搜索。
字符串应该简单地表示:
Update-Manager::Always-Include-Phased-Updates;
或Update-Manager::Never-Include-Phased-Updates;
。不需要或检查 True/False 布尔值。您应该能够将该行添加到中的任何配置文件中
/etc/apt/apt.conf.d/
。或者创建您自己的:/etc/apt/apt.conf.d/99-Phased-Updates
。当更新管理器(也称为软件更新程序)运行时,分阶段更新的存在或的存在
Never-Include-Phased-Updates
都应该记录在您的日志中。/var/log/apt/
其他。apt
基于的软件包管理器(Apt、Synaptic、Ubuntu Software、Unattended Upgrades)不使用更新管理器代码,不使用分阶段更新,并且忽略配置字符串的存在(不会记录)apt
开始使用分阶段更新从 21.04 开始。该
apt
设置与更新管理器设置略有不同:Update-Manager::Always-Include-Phased-Updates; APT::Get::Always-Include-Phased-Updates True; Update-Manager::Never-Include-Phased-Updates; APT::Get::Never-Include-Phased-Updates True;
我们讨论的是将更新(通常)分散到几天内——对于大多数用户来说,这没什么区别。您可以通过
apt
忽略分阶段来提前获取更新(一次性sudo apt -o APT::Get::Always-Include-Phased-Updates=true upgrade
:)
为了好玩:存储库中分阶段更新包的当前状态为https://people.canonical.com/~ubuntu-archive/phased-updates.html
对新用户的建议:分阶段更新的目的是保护您免受偶尔出现的错误更新的影响。让它做到这一点。想要禁用此功能的高级用户知道如何从中恢复。