PVE因boot空间不足而升级失败的解决办法
默认安装时,proxmox
给/boot
分配的空间才不到300M。而proxmox
的迭代很快,/boot
很容易就被占满,稍不注意就导致升级失败,唯一的做法就是手工删除旧的kernel。
删掉旧kernel
proxmox
基于debian
,每次使用apt update && apt dist-upgrade
时,都会自动安装debian的linux-image
,还有pve-kernel
。这两货都会占用/boot
的空间,所以腾空间就是删掉这两个旧kernel
。
- 抄下在用kernel
uname -mrs
- 找出老旧kernel
dpkg --list | grep "linux-image"
dpkg --list | grep "pve-kernel"
- 删除之
apt purge linux-image-$old_version
NOTE: proxmox
因为/boot
空间不足而升级失败的话,update-grub
也会失败,不过不用担心,每次使用apt purge
旧内核时,都会重新update-grub
。自然会将最新的kernel
作为首选启动项,如果不放心,可以使用grub-set-default $menuentry_id
和grub-reboot $menuentry_id
来手工设置下一次启动的默认kernel
上述的步骤还是稍显麻烦,时不时都得惦记着/boot
,好在还有两种懒人的方法:
- https://github.com/jordanhillis/pvekclean
- 在
proxmox
安装的时候,手工将/boot分区设为2G,至少可以清净一段时间。