CentOS扩容boot分区并升级内核

本文作者CVE-柠檬i:https://www.cnblogs.com/CVE-Lemon

前言

由于安装k8s需要升级内核,但我自己的的boot分区只有200M大小,无法安装新内核,所以干脆把swap分区分给boot了。在此期间关于grub的操作踩了好多坑,所以特此记录一下正确操作。

使用rpm安装新内核,下载链接:https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-5.4.203-1.el7.elrepo.x86_64.rpm

操作

扩容分区

使用df -hT,可以看到boot只有190M,swap已经被关掉了,有4个G

复制/boot的文件:

复制代码
mkdir ~/bootbak
cp -a /boot/* ~/bootbak

取消挂载

复制代码
umount /boot

使用fdisk删除sda1和sda2,重新创建新的sda1

复制代码
fdisk /dev/sda
d
1
d
2
n
a
1

格式化分区

复制代码
mkfs.ext4 /dev/sda1

修改etc/fstab

复制代码
/dev/sda1	/boot                   ext4    defaults        1 2

恢复boot的文件

复制代码
mount /dev/sda1 /boot
cp -a ~/bootbak/* /boot

安装grub并重新生成grub配置文件。注意,安装grub是安装到磁盘而非分区。

复制代码
grub2-install /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg

安装内核

安装内核:

复制代码
rpm -ivh kernel-lt-5.4.203-1.el7.elrepo.x86_64.rpm

查看并设置启动顺序

复制代码
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg

grub2-set-default 0

重启验证

复制代码
reboot

升级成功:

复制代码
uname -r
相关推荐
破刺不会编程41 分钟前
socket编程UDP
linux·运维·服务器·网络·c++·网络协议·udp
NEXU57 小时前
Linux:套接字
linux·服务器·网络
morliz子轩8 小时前
基于WSL搭建Ubuntu 22.04.x LTS开发环境
linux·运维·ubuntu
Janspran9 小时前
嵌入式linux学习 -- 进程和线程
linux·运维·学习
Cosmoshhhyyy9 小时前
linux远程部署dify和mac本地部署dify
linux·运维·macos
路多辛11 小时前
Debian新一代的APT软件源配置文件格式DEB822详解
linux·运维·ubuntu·debian
-VE-11 小时前
Linux线程控制
linux
驱动探索者11 小时前
USB ADB 简介
linux·adb·驱动·usb
dessler13 小时前
Hadoop HDFS-部署和基本操作
linux·运维·hdfs
风静雪冷13 小时前
find命令解读
linux