在Ubuntu中自动安装更新和安全补丁

时间:2020-03-21 11:45:47  来源:igfitidea点击:

每个系统管理员的重要任务之一就是定期更新软件包并应用安全补丁。
今天,我们将讨论一个重要的主题,即如何在Ubuntu中自动安装更新和安全补丁。
为了简化此任务,对于基于Debian的系统有一个名为unattended-upgrades的软件包。
它使我们能够在可用的时候自动安装更新的软件包和安全补丁。
我们可以将系统配置为更新所有软件包,也可以仅安装安全更新。
在管理无头的Ubuntu服务器时,这可能非常有用。
当然,我们也可以在桌面上进行配置。

在Ubuntu中自动安装更新和安全补丁

要自动安装软件更新和安全补丁,首先我们需要安装无人值守升级软件包。
为此,请运行:

$sudo apt install unattended-upgrades

现在,我们必须配置自动更新。

让我们编辑/etc/apt/apt.conf.d/50unattended-upgrades文件:

$sudo vi /etc/apt/apt.conf.d/50unattended-upgrades

并进行适合我们需求的更改。

//Automatically upgrade packages from these (origin:archive) pairs
Unattended-Upgrade::Allowed-Origins {
 "${distro_id}:${distro_codename}";
 "${distro_id}:${distro_codename}-security";
//"${distro_id}:${distro_codename}-updates";
//"${distro_id}:${distro_codename}-proposed";
//"${distro_id}:${distro_codename}-backports";
};

如我们在上面的配置中看到的,我已经从安全性APT源配置了软件包以自动升级。
如果要配置来自其他APT源的自动更新(例如更新,建议和反向移植),则可以取消注释其他行,只需取消注释相应的行即可。
保存并退出文件。

我们还可以通过将它们添加到黑名单中(如下所示)将某些软件包从自动更新中列入黑名单。
此列表下的所有内容都不会自动更新。

//List of packages to not update (regexp are supported)
Unattended-Upgrade::Package-Blacklist {
//"vim";
//"libc6";
//"libc6-dev";
//"libc6-i686";
};

按照上述配置,名为vim,libc6,libc6-dev,libc6-i686的软件包将不会自动更新。
我们已经配置了自动更新。

接下来,我们需要启用自动更新。
为此,请编辑/etc/apt/apt.conf.d/10定期文件:

$sudo nano /etc/apt/apt.conf.d/10periodic

进行相应的更改。

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";

按照上述配置,软件源将被更新,可用更新的列表将每天自动下载和安装。
然后,本地缓存文件夹将每周清除一次。