CentOS系统安装内核时提示/boot分区空间不足问题的解决方法

(编辑:jimmy 日期: 2024/11/16 浏览:2)

今天登录服务器,准备使用 yum 安装一个软件,习惯性的先 yum update 一下,结果最后出现如下错误:

复制代码代码如下:
...
Transaction check error:
installing package kernel-3.10.0-327.4.5.el7.x86_64 needs 20MB on the /boot filesystem
Error Summary
-------------
Disk Requirements:
At least 20MB more space needed on the /boot filesystem.

看提示是要安装新的 Linux 内核包,但 /boot 文件系统空间不足 20MB。所以更新失败了。
好吧,那就看看 /boot 下面到底还有多少空间。

复制代码代码如下:
> df -H /boot
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 247M 237M 10M 96% /boot

嗯,只有 10M 了,电脑是不会撒谎的。怎么办呢,/boot 文件系统是很重要的,弄不好系统就挂了,我可不想出现这样的结局,明天可是周六。
网上搜索了一番,原来可以尝试删除旧的内核包来达到清理空间的目的。 (文章地址)
先看看有没有旧的内核包:

复制代码代码如下:
> rpm -qa|grep kernel
kernel-3.10.0-229.14.1.el7.x86_64
kernel-3.10.0-229.11.1.el7.x86_64
kernel-devel-3.10.0-229.11.1.el7.x86_64
kernel-3.10.0-327.4.4.el7.x86_64
kernel-devel-3.10.0-327.4.4.el7.x86_64
kernel-devel-3.10.0-229.14.1.el7.x86_64
kernel-headers-3.10.0-327.4.4.el7.x86_64
kernel-3.10.0-229.el7.x86_64
kernel-tools-libs-3.10.0-327.4.4.el7.x86_64
kernel-tools-3.10.0-327.4.4.el7.x86_64

嗯,有的,那就好。不过开始之前,我还要确认一下当前系统用的是哪个,删错了可不好。

复制代码代码如下:
> uname -a
Linux ... 3.10.0-229.14.1.el7.x86_64 #1 ... GNU/Linux

看样子我只要不动 3.10.0-229.14.1 就个版本可以了。我决定删 3.10.0-229.11.1 这个版本。

复制代码代码如下:
> sudo rpm -e kernel-3.10.0-229.11.1.el7.x86_64 kernel-devel-3.10.0-229.11.1.el7.x86_64

然后再看看 /boot 文件系统的可用大小。

复制代码代码如下:
> df -H /boot
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 247M 190M 57M 78% /boot

有 57M 了,足够了。再次执行 sudo yum update,更新新的内核包成功。

一句话新闻

微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。