首先 - 我对 ubuntu 和论坛都很陌生,所以这次请对我宽容一点!
我知道经常有人问这个问题unattended-upgrades
,而这个问题这里看起来可能与我的问题相同 - 但我想确认该包确实正在运行并正确更新我的服务器
与上面的帖子一样,登录时我收到以下消息:
28 updates can be applied immediately.
13 of these updates are standard security updates.
我很惊讶,并检查了配置文件/etc/apt/apt.config.d/50unattended-upgrades
,发现安全更新的选项看起来是正确的(据我所知):
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
// Extended Security Maintenance; doesn't necessarily exist for
// every release and this system may not have it installed, but if
// available, the policy for updates is such that unattended-upgrades
// should also install from here by default.
"${distro_id}ESMApps:${distro_codename}-apps-security";
"${distro_id}ESM:${distro_codename}-infra-security";
// "${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
运行sudo systemctl status unattended-upgrades.service
表明它处于活动状态,并且我认为ls -lh /var/lib/apt/periodic/
表明它已经运行了。
但我仍然有点不确定,所以尝试查看这里的日志(显然):,cd /var/log/unattended-upgrades
但它说我没有权限,我觉得这有点奇怪,因为我以为我已将此用户提升为超级用户组。但就像我说的,我对 Ubuntu 真的很陌生,虽然我知道足够多的东西来解决这个问题,但第 10 次尝试是没有意义sudo cd
!XD
如果有人能帮我确认它unattended-upgrades
是否正常工作,我将不胜感激。是不是有些更新被标记为安全更新,但实际上并非如此?
谢谢!
答案1
它可能运行得很好。
安全更新确实是自动的,但事实并非如此立即的。
两个独立的作业运行无人值守升级的apt update
元素apt upgrade
,这些作业可能相隔数小时运行。您可能在该间隔内登录。
- 这些作业间隔数小时运行,基本上是随机的,每天最多运行两次,以捕捉所有可能的使用模式并平衡服务器需求。
让我们使用为此目的提供的时间戳文件来检查操作是否成功:
$ ls -l /var/lib/apt/periodic/
total 0
-rw-r--r-- 1 root root 0 Mar 20 08:27 download-upgradeable-stamp
-rw-r--r-- 1 root root 0 Mar 20 08:28 unattended-upgrades-stamp
-rw-r--r-- 1 root root 0 Mar 20 08:27 update-stamp
-rw-r--r-- 1 root root 0 Mar 21 06:11 update-success-stamp
-rw-r--r-- 1 root root 0 Mar 20 08:28 upgrade-stamp
在这里你可以看到 apt update 上次成功运行于Mar 21 06:11
。而上次成功的无人值守升级是在一天前。
我们可以通过检查日志来确认该活动:
$ sudo tail /var/log/unattended-upgrades/unattended-upgrades.log
[...snip...]
2023-03-20 08:27:59,288 INFO Packages that will be upgraded: libpython3.10 libpython3.10-minimal libpython3.10-stdlib python3.10 python3.10-minimal
2023-03-20 08:27:59,289 INFO Writing dpkg log to /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
2023-03-20 08:28:12,858 INFO All upgrades installed
现在我们可以看到:在昨天成功运行期间,无人值守升级安装了五个安全更新。今天还没有运行
答案2
当此行存在时,无人值守升级将只进行安全升级:
// "${distro_id}:${distro_codename}-updates
我个人取消了此行的注释(删除了 2 个斜杠),因此我的无人值守升级也可以正常升级。
现在,唯一不会自动升级的是来自外部存储库或 PPA 的软件包。