Щодо відповіді чому, зверніться до файлу /etc/apt/apt.conf.d/01autoremove-kernels
Як ви можете бачити, схильний сказано ніколи не autoremove ядра, як сказав інший файл (скрипт), /etc/kernel/postinst.d/apt-auto-removal
. І ось це:
Якщо ви вручну встановите 2 обраних ядра, тобто перше та поточне, то apt-autoremove видалить лише старіші версії, які ви не встановили вручну, тому у вас завжди будуть ці 2 варіанти плюс будь-яка остання.
Оновлення:
У /etc/kernel/postinst.d/apt-auto-removal
цій частині є:
if [ "$latest_version" != "$installed_version" ] \
|| [ "$latest_version" != "$running_version" ] \
|| [ "$installed_version" != "$running_version" ]
then
# We have at least two kernels that we have reason to think the
# user wants, so don't save the second-newest version.
previous_version=
fi
Отже, якщо ви порівняєте вихідний 01autoremove-kernels
файл і uname -r
зрозумієте, що поточне ядро, що працює в даний час, і найсвіжіше до нього, це сценарій ніколи не буде видалено. Виявляється, є ще один файл /etc/apt/apt.conf.d/01autoremove
, де є рядки:
APT
{
NeverAutoRemove
{
"^firmware-linux.*";
"^linux-firmware$";
};
VersionedKernelPackages
{
# linux kernels
"linux-image";
"linux-headers";
"linux-image-extra";
"linux-signed-image";
# kfreebsd kernels
"kfreebsd-image";
"kfreebsd-headers";
# hurd kernels
"gnumach-image";
# (out-of-tree) modules
".*-modules";
".*-kernel";
"linux-backports-modules-.*";
# tools
"linux-tools";
};
Тож ви можете прокоментувати це, і це дозволить вам автоматично видалити ядра за допомогою apt-autoremove
, хоча пам’ятайте - робіть це на свій страх і ризик