这并不是如上所述的重复 - 至于原因,请参阅下文。
我遇到了一种奇怪的情况,一个“旧”内核正在运行(事实上它是最旧的):
uname -r
> 4.13.0-43-generic
使用命令显示可用的内核我只看到较新的内核(!):
sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`
linux-image-4.13.0-45-generic
linux-image-4.15.0-24-generic
linux-image-4.15.0-29-generic
linux-image-4.15.0-30-generic
linux-image-4.15.0-32-generic
linux-image-4.15.0-33-generic
linux-image-4.15.0-34-generic
linux-image-extra-4.13.0-45-generic
看起来好像系统从未重新启动来“获取新内核”——例如,我在根目录中看到:
ls -al
lrwxrwxrwx 1 root root 33 Sep 11 06:02 initrd.img -> boot/initrd.img-4.15.0-34-generic
lrwxrwxrwx 1 root root 33 Sep 11 06:02 initrd.img.old -> boot/initrd.img-4.15.0-33-generic
lrwxrwxrwx 1 root root 30 Sep 11 06:02 vmlinuz -> boot/vmlinuz-4.15.0-34-generic
lrwxrwxrwx 1 root root 30 Sep 11 06:02 vmlinuz.old -> boot/vmlinuz-4.15.0-33-generic
这对我来说有点暗示(我不是 ubuntu 专家)...
这不是一个重复的问题,而是一个新的我没有问题老的要删除的内核。其他答案详细说明了删除带有版本号的旧内核较少的比当前内核。
正在运行的内核是列表中最旧的。我担心删除内核更新比当前内核 - 当前内核和最新内核之间以及想要安装的内核之间 - 但由于启动分区已满 100% 而被阻止。
当启动分区已满时,所有使用“apt”的答案都不起作用所以请忽略它们:)
来自我最初的问题:所以我想重启机器。但这很危险吗 - 因为启动分区已经 100% 满了。“通常”我会删除旧内核等以释放空间。这里最好的/最安全的方法是什么?
我问这个问题是因为我觉得我“应该”腾出一些空间(见如果 /boot 分区已满,ubuntu 还能启动吗?)... 但在这种特殊情况下该如何做?
这是我解决问题的方法:
最后,由于apt autoremove
等在这种情况下不起作用,我遵循了这里给出的提示:https://gist.github.com/ipbastola/2760cfc28be62a5ee10036851c654600
(看:“案例 II:无法使用 apt,因为 /boot 已满 100%”)
就我而言,我删除了更新手动释放内核空间以便/boot
能够继续:
cd /boot
ls *4.13.0-45*
rm -rf *4.13.0-45*
df -h
sudo apt-get -f install
sudo apt-get autoremove
sudo update-grub
more grub/grub.cfg
reboot
df -h
显示启动不再 100% 完整您more grub/grub.cfg
可以检查系统是否满足正确的内核(即是否运行update grub
良好)
答案1
按该顺序逐个运行这些命令并每次检查空间。
sudo apt autoremove
然后
sudo apt autoclean
如果空间不足,请运行:
sudo apt clean
和
sudo update-grub
必須工作。
重启后新内核通过运行以下命令确认最新的内核已完全安装:
uname -r
和
sudo update-initramfs -u -k all
然后运行
sudo apt purge $(dpkg -l|egrep 'linux-image-[0-9]|linux-headers-[0-9]'|awk '{print $3,$2}'|grep -v `uname -r|cut -f1,2 -d"-"`|sort -nr|tail -n +4|awk '{ print $2}')
这将删除除您正在使用的内核和最新内核之外的所有旧内核。
编辑
注意:在运行所有这些命令之前,您可以运行sudo update-initramfs -u -k all
以确认最新的内核已完全安装。