如何将软件包添加至unattended-upgrades以实现自动更新?
如何将软件包添加至unattended-upgrades以实现自动更新?
嘿,我来帮你搞定这个问题!要让像XXX这样的软件包能通过unattended-upgrades在后台自动更新,其实步骤很清晰,跟着我一步步操作就行:
编辑核心配置文件:首先打开unattended-upgrades的主配置文件,用你顺手的文本编辑器就行,比如nano:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades配置允许更新的源或白名单包:
- 如果你的XXX包来自系统官方源(比如Ubuntu的main或security源),先看看文件里的
Unattended-Upgrade::Allowed-Origins区块,正常情况下官方源已经被包含在内了,这时候XXX应该会自动被纳入更新范围。 - 如果是第三方源的包,你需要把对应的源标识添加到
Allowed-Origins里。比如你的源是deb http://example.com/ubuntu focal main,那就加一行"example.com:focal";到这个区块里。 - 要是你想单独指定XXX这个包(不管它来自哪个源),可以在文件里添加一个白名单区块:
Unattended-Upgrade::Package-Whitelist { "XXX"; # 要是想匹配XXX相关的所有包,还可以写成"XXX*"; };
- 如果你的XXX包来自系统官方源(比如Ubuntu的main或security源),先看看文件里的
保存配置并验证:按Ctrl+O保存文件,Ctrl+X退出编辑器。然后跑个测试命令确认配置没问题:
sudo unattended-upgrade --dry-run
看看输出里有没有提到XXX包会被处理,这样就能确保配置生效了。重启服务让设置生效:最后重启unattended-upgrades服务:
sudo systemctl restart unattended-upgrades
另外给你个小提示:别忘了检查/etc/apt/apt.conf.d/20auto-upgrades文件,确保自动更新的开关是打开的,里面应该有这两行:
APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1";
这里的"1"表示每天执行一次,你可以根据需求调整数字哦。
备注:内容来源于stack exchange,提问作者NicolasSmith




