统信uos系统/boot分区空间告急、grub菜单冗长或升级失败,主因是旧内核镜像及initrd等文件堆积;应通过控制中心卸载旧内核(保留当前与最新版)、终端命令批量清理非当前内核包并更新grub,或手动删除/boot中孤立残留文件。

统信UOS系统/boot分区空间告急、开机GRUB菜单冗长或系统升级失败,大概率是旧Linux内核镜像、initrd文件及配套headers长期堆积所致;这些残留通常单个占用200~400MB,多个叠加可迅速填满500MB标准/boot分区。
图形化方式:用控制中心安全卸载旧内核
这是最稳妥的入门操作,界面自动屏蔽当前运行内核与最新安装版本,避免误删导致无法启动。
点击屏幕左下角「开始菜单」→ 选择「控制中心」→ 左侧导航栏进入「软件管理」→ 「已安装软件」。
在右上角搜索框中输入linux-image,回车后列出全部内核包;注意查看右侧“安装时间”列和版本号,【务必保留uname -r输出的当前运行版本,以及版本号最高的一个备用内核】,其余全部勾选。
点击右下角「卸载」按钮,输入管理员密码确认执行。
卸载完成后,必须打开终端执行sudo update-grub——否则旧引导项仍会显示在开机菜单中,/boot空间也不会真正释放。
终端命令:一键批量清理非当前内核
适合熟悉命令行、需快速处理多台设备的用户;命令自动排除当前运行内核,只清理其余所有旧版image与headers包。
按Ctrl + Alt + T打开终端。
执行以下命令卸载全部非当前内核镜像包:sudo apt purge $(dpkg -l | awk '/^ii linux-image-[0-9]/ && !/$(uname -r)/ {print $2}') --yes
紧接着清理对应headers包,防止依赖残留干扰后续升级:sudo apt purge $(dpkg -l | awk '/^ii linux-headers-[0-9]/ && !/$(uname -r)/ {print $2}') --yes
最后强制刷新GRUB配置,彻底清除无效启动项:sudo update-grub
手动清理:删除/boot中孤立的残留文件
当df /boot显示空间未释放,但dpkg -l里已无对应内核包名时,说明存在APT未追踪的孤儿文件,必须人工比对后删除。
第一步:进入/boot目录:cd /boot
第二步:列出所有内核相关文件:ls -l vmlinuz-* initrd.img-* System.map-* config-*
第三步:比对文件名后缀(如-5.10.0-amd64)与当前uname -r输出及dpkg列表中的最新保留版本;【只删除后缀不属于任一保留版本的文件,例如vmlinuz-5.4.0-amd64】
第四步:逐个执行删除命令,例如:sudo rm -f vmlinuz-5.4.0-amd64 initrd.img-5.4.0-amd64 System.map-5.4.0-amd64 config-5.4.0-amd64











