在一个全新安装的
Ubuntu 22.04 LTS 上,每次使用
apt 安装或更新软件包时,会出现一个
Daemons using outdated libraries 弹窗,
Which service should be restarted ? 大概是下面这个样子:

这让我想起了
windows 上每次打开一个应用都会弹窗提示安全提醒,异曲同工啊。一脸懵的情况下,只能一阵点击
Esc,
Enter 后自求多福了。
剩下的就是怎么禁用这个功能呢?
实际上,这是
Ubuntu 22.04 中的新功能。它是由
needrestart 命令带来的新特性,
needrestart 现在是
Ubuntu 中
apt-get 升级过程的一部分。默认情况下,此设置为
interactive (交互式)模式,会导致脚本中断。
修改这个模式配置,我们编辑
/etc/needrestart/needrestart.conf 文件,找到下面的这行:
#$nrconf{restart} = 'i';
这个有三个可选配置:
# i: 交互提示重新启动(默认值)
i: prompt interactively for restarts (default value)
# a: 自动重启
a: restart automatically
# l: 列出需要重启的服务
l: list needed restarts
直接修改成:
$nrconf{restart} = 'a'
就不会再弹窗了,如果你想看要重启哪些服务,那就尝试设置成’l’试试。
更直接的办法
直接卸载掉
needrestart,世界清净了。
sudo apt autoremove -y --purge needrestart