在自动删除之前,如何将4个Linux内核默认保留在/ boot中

我做了一些挖掘,发现内核的自动清理在/etc/kernel/postinst.d/apt-auto-removal ,文件说明:

 # In the common case this results in two kernels saved (booted into the # second-latest kernel, we install the latest kernel in an upgrade), but # can save up to four. Kernel refers here to a distinct release, which can # potentially be installed in multiple flavours counting as one kernel. 

但是那个脚本远远超出了我的脑海,除了最后4个内核之外,我无法轻易找到autoclean。

当它说“最多四个”时,它意味着当前运行的,当前安装的,最新的和以前的版本都可以不同,导致自动保留四个版本(至少两个版本)。 看到这部分代码:

 debkernels="$(echo "$latest_version $installed_version $running_version $previous_version" | sort -u | sed -e '/^$/ d')" 

我认为保存旧内核的最简单方法是将$previous_version扩展到列表。 代替:

 previous_version="$(echo "$debverlist" | sed -n 2p)" 

做:

 previous_version="$(echo "$debverlist" | sed -n 2,4p)"