解决Centos /boot过小无法更新内核

Centos7默认安装时,/boot目录设置只有150M左右,这样编译几个版本的内核/boot空间就不够用了。报错大致如下:

Disk Requirements: At least 3MB more space needed on the /boot filesystem.

这里用的方法是:添加一块硬盘(由于是VM,所以比较方便),添加到VG卷组中,然后新建一个创建一个逻辑卷,将/boot mount到新建的逻辑卷,这样的话,/boot就可以要多大有多大了,具体操作如下:

1、添加一个硬盘

2、新建逻辑卷

  ①、新建LVM分区 并 添加到现有VG卷组中

    fdisk -l # 查看到添加的新硬盘

    

    用新硬盘创建物理卷,pvcreate 磁盘分区或整个磁盘    

    

    vgdisplay #查看现有VG卷组的情况,记下卷组名字cl; 应该注意到Free PE现在是0的状态

    

    添加新的物理卷到卷组,vgextend 卷组名 新加入的物理卷

    

    这时再一次查看VG情况,将看到Free PE已经有了20G。这时就可以用了

    

    新建逻辑卷,lvcreate -L 逻辑卷大小(K、M、G)-n 逻辑卷名称 所属的卷组名;并格式化为xfs文件系统

    

    可以看到逻辑卷已经创建成功

3、将/boot目录挂载到新的逻辑卷下,并将/boot目录下所有内容拷贝过去

  查看现有目录挂载情况,df -hT

  

  ①、umout /boot

  ②、mkdir /boot_old

  ③、mount /dev/sda1 /boot_old

  ④、mount /dev/mapper/cl-for--boot /boot

  ⑤、cp -rp /boot_old/* /boot

  ⑥、更改/etc/fstab

    

查看现在目录挂载情况,搞定。可以正常升级内核了。

  

    

    

    

    

    

原文地址:https://www.cnblogs.com/jpinsz/p/10865229.html