suse 内核编译安装_Linux 内核升级

本文详细介绍了如何在SUSE操作系统上进行内核编译和安装过程,通过执行'make install'命令来完成关键步骤。
摘要由CSDN通过智能技术生成

d12611a53f16aca9bbdb858c1eb60ff1.png

有时候需要在安装 docker 的时候,系统内核不够,需要升级到内核版本多少以上,可以用 uname -r 查看。 用过 k8s 的同学应该知道,有时候在kubernetes集群中centos7.5低版本的内核中会出现一下很让人恼火的BUG,时不时来一下,发作时候会导致整个OS Hang住无法执行任何 命令。 并且会导致 k8s 集群中部署应用时无法部署,一直在 创建中。 根据官方说法确定为内核 bug,故模拟了一下内核升级。 问题现象如下: 一直不断刷,执行命令也无法执行且发布应用也无法发布。 kernel:unregister_netdevice: waiting for lo to become free. Usage count = 1 本次升级是将内核版本从 3.10.0 升级到 4.9.11。 备:升级前磁盘至少保证在 10G 以上空间,以防在编译的时候中断。 yum install -y epel-release  yum -y install gcc bc gcc-c++ ncurses ncurses-devel cmake elfutils-libelf-devel openssl-devel bison flex perl  从前端网页手动下载然后上传到服务器上或者直接用 wget下载。
wget http://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.11.tar.gz
dbb1d4829f78342620e104c029c193ca.png 创建相关目录并解压:
cd /optmkdir kernelcd kernelmv /root/linux-4.19.11.tar.gz .tar -zxvf linux-4.19.11.tar.gz
清理内核编译源目录: make mrproper  之后进入解压目录,开始进行内核菜单自定义: make menuconfig  会弹出来一个内核菜单: ab8557c5514a340a1517fe7f6332c566.png 这里可以进行一些内核功能的自定义,如果有需要可以进行定制,如果没需要的话可以在弹窗直接选择 exit。 接下来进行编译: make bc53a8bdb8824ae893ab3d4e6749e588.png 可以再开一个窗口,观察磁盘的使用率: watch -n 1 'df -h'  ,1s刷新一次 9bdb818747a2165d6071e807a039f722.png 49ae0460688b11a69516d3670bd92d22.png 编译完后后,进行内核模块的安装: make modules_install  48e9849af66e9566c2fd597f46b7a518.png 内核模块安装完毕后,查看/lib/modules ,可以在这个目录下看到内核的文件夹。 ll /lib/modules 378c8f96eae85d647d5368df17789ca4.png

执行 make install 安装内核相关文件 :make install 等待结束。

9fe150100a0a2ab60c127ee2f23ab576.png 安装完成后修改默认内核启动项并查看可用内核。 cat /boot/grub2/grub.cfg | grep menuentry //查看系统可用内核 161000aad9bc567abb35070593db77ac.png grub2-set-default 'CentOS Linux (4.19.11) 7 (Core)' //修改开机默认使用的内核  grub2-mkconfig -o /etc/grub2.cfg  2d88e2b37b1b95f5503e5f0a16a38996.png 等待完成后进行 reboot 。 重启的时候可以看到默认开启项的第一个内核是刚升级的 4.19.11了。 456b7ba0bc7131d66cdba2985a34b0c4.png 重启后,进行查看 uname -r ,可以看到内核版本此时已经成为新的版本了。 a0accca07731ef11ba9824545306af42.png 接下来需要清理旧版本的内核的相关安装包。
rpm -qa | grep -i kernelrpm -e 将查出来老的kernel包全部移除掉。安装更新旧内核时被卸载的软件yum install -y compat-glibc compat-glibc-headers gcc gcc-c++ gcc-gfortran glibc-devel glibc-headers libquadmath-devel libtool systemtap systemtap-devel
5ae6698a56995910108efa6d9456ee95.png b45fbafa6e754d60897cf2d890da974c.png 查看默认内核 grub2-editenv list   saved_entry=Red Hat Enterprise Linux Server (4.19.11) 7.6 (Maipo) 这样就顺利完成了。 唯有热爱,方可持久。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值