Để trả lời tại sao, hãy tham khảo tệp /etc/apt/apt.conf.d/01autoremove-kernels
Như bạn có thể thấy, apt được yêu cầu không bao giờ tự động di chuyển các hạt nhân, như được nói bởi một tệp (script) khác , /etc/kernel/postinst.d/apt-auto-removal
. Và đây là:
Nếu bạn cài đặt thủ công 2 hạt nhân đã chọn, tức là hạt nhân đầu tiên và hiện tại, thì apt-autoremove sẽ chỉ xóa các phiên bản cũ hơn mà bạn không cài đặt thủ công, vì vậy bạn sẽ luôn có 2 tùy chọn đó cộng với bất kỳ tùy chọn mới nhất nào.
Cập nhật:
Trong /etc/kernel/postinst.d/apt-auto-removal
đó có phần này:
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
Vì vậy, nếu bạn so sánh đầu ra của 01autoremove-kernels
tệp và uname -r
bạn sẽ nhận ra rằng hạt nhân hiện đang chạy và gần đây nhất trước nó, sẽ không bao giờ bị xóa bởi tập lệnh đó. Hóa ra là một tập tin khác /etc/apt/apt.conf.d/01autoremove
, nơi có các dòng:
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";
};
Vì vậy, bạn có thể nhận xét những điều này và nó sẽ cho phép bạn tự động loại bỏ các hạt nhân bằng apt-autoremove
, mặc dù vậy, hãy nhớ - làm điều này có nguy cơ của riêng bạn