我正在尝试设置Unattended-Upgrade::Allowed-Origins,以便它只允许安全更新。我想在apt.conf.d中稍后的配置中这样做,将默认的50unattended-upgrades配置保留为默认的,只是重写。
在我的99-unattended-upgrades中,我将设置以下内容:
// Only allow security origin
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
};但是,这似乎与现有的配置(而不仅仅是使用它)合并,就像在执行apt-config dump时一样,我可以在其中看到默认的设置。
我还尝试用以下方法设置它:
Unattended-Upgrade::Allowed-Origins "${distro_id}:${distro_codename}-security";也不起作用。
我可以简单地注释掉50unattended-updates中的行,但是,如果可以的话,我真的很想保持原始文件的原始状态。
发布于 2018-08-05 22:05:51
经过对apt源代码的深入研究,然后在apt-conf手册页面中,我们发现有一种方法
#clear用于删除配置树的一部分。将删除指定的元素及其所有子元素。(请注意,这些行还需要以分号结尾。)#clear命令是删除列表或完整范围的唯一方法。重新打开作用域(或使用下面描述的语法并附加::)不会覆盖以前编写的条目。选项只能通过向它们寻址一个新值来重写--列表和作用域不能被重写,只能被清除。
这样你就能得到你想要的:
#clear Unattended-Upgrade::Allowed-Origins;
// Only allow security origin
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
};https://serverfault.com/questions/924538
复制相似问题