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,至少可以清净一段时间。