最近,我注意到,当我运行 时sudo apt update
,每次都会有额外的 6 行写入我的系统日志:
Jan 29 21:17:01 xb systemd[1]: Starting Update APT News...
Jan 29 21:17:01 xb systemd[1]: Starting Update the local ESM caches...
Jan 29 21:17:02 xb systemd[1]: apt-news.service: Deactivated successfully.
Jan 29 21:17:02 xb systemd[1]: Finished Update APT News.
Jan 29 21:17:02 xb systemd[1]: esm-cache.service: Deactivated successfully.
Jan 29 21:17:02 xb systemd[1]: Finished Update the local ESM caches.
此外,我可以看到和的apt-news.service
日期esm-cache.service
都是 2023-01-19,这意味着它们是我系统上引入的相对较新的服务。
我认为这些服务在我的系统日志中发出噪音,而我的机器实际上并不需要它们。那么如何禁用它们,以便它们不会在您每次使用时触发apt update
?
答案1
让我们探索服务文件以查看可用的信息:
$ cat /lib/systemd/system/apt-news.service
[Unit]
Description=Update APT News
[Service]
Type=oneshot
ExecStart=/usr/bin/python3 /usr/lib/ubuntu-advantage/apt_news.py
$ cat /lib/systemd/system/esm-cache.service
# The ESM apt cache will maintain information about what ESM updates are
# available to a system. This information will be presented to users in the apt
# output, or when running pro security-status. These caches are maintained
# entirely outside the system apt configuration to avoid interference with user
# definitions. This service updates those caches. This will only have effect
# on releases where ESM is applicable, starting from Xenial: esm-apps for
# every LTS, and esm-infra for systems in expanded support period after the LTS
# expires.
[Unit]
Description=Update the local ESM caches
[Service]
Type=oneshot
ExecStart=/usr/bin/python3 /usr/lib/ubuntu-advantage/esm_cache.py
esm-cache.service
对其用途的信息稍微慷慨一些,而 并没有apt-news.service
真正阐明太多。然而,“APT新闻”最近在另一个问题中被提及,并且可以得出结论,它与这个apt
提示有关。
进一步检查apt
历史记录,这些服务似乎是使用ubuntu-advantage-tools
27.13.X 版本安装的。(对我而言,这是在 2023-01-27 推出的 27.13.1 版本,arm64
以及在 2023-01-29 推出的 27.13.2 版本x64
。)
apt
由于这些服务似乎仅提供与运行(和)相关的附加信息pro security-status
,因此禁用它们应该是安全的。
只需屏蔽服务单元即可完成systemd
,如下所示:
$ sudo systemctl mask apt-news.service
$ sudo systemctl mask esm-cache.service
此外,您可以apt
通过执行以下操作来禁用整个 ESM 挂钩:(感谢 Daniel T)
$ sudo dpkg-divert --rename --divert /etc/apt/apt.conf.d/20apt-esm-hook.conf.disabled --add /etc/apt/apt.conf.d/20apt-esm-hook.conf
(请注意,--rename
在 Ubuntu 22.04 及更高版本中可以省略该选项,因为这是默认设置。)
通过移动此文件,整个apt
ESM 挂钩将被禁用并且永远不会运行。这dpkg-divert
将确保此文件始终被重定向,即使在ubuntu-advantage-tools
升级并尝试再次安装该文件时也是如此。