linux安装新内核&内核打补丁

系统原本的kernel版本:

[root@server5 mnt]# uname -a
Linux server5 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux

1.安装新的内核源码包

[root@server5 mnt]# rpm -ivh kernel-2.6.32-220.23.1.el6.src.rpm 

2.执行完上一步,会在/root下生成一个rpmbuild目录

[root@server5 ~]# ls /root/rpmbuild/
SOURCES SPECS

3.解压出安装的内核源代码

安装rpm解包工具:

yum install rpm-build -y

安装解包过程需要的依赖性环境包:

yum install gcc redhat-rpm-config patchutils xmlto asciidoc elfutils-libelf-devel zlib-devel binutils-devel newt-devel python-devel hmaccalc perl-ExtUtils-Embed -y

yum install newt-devel-0.52.11-3.el6.x86_64.rpm asciidoc-8.4.5-4.1.el6.noarch.rpm slang-devel-2.2.1-1.el6.x86_64.rpm -y

解压出内核源代码:

[root@server5 mnt]# cd /root/rpmbuild/SPECS/
[root@server5 SPECS]# ls
kernel.spec
[root@server5 SPECS]# rpmbuild -bp kernel.spec

#如果卡住了,再开一个shell,执行rngd -r /dev/urandom即可(rngd命令对应的包是rng-tools)

4.解压完之后rpmbuild目录下会生成一些新的目录

[root@server5 SPECS]# cd /root/rpmbuild/
[root@server5 rpmbuild]# ls
BUILD BUILDROOT RPMS SOURCES SPECS SRPMS

5.将/mnt下的补丁包复制进来

[root@server5 rpmbuild]# cd /root/rpmbuild/BUILD/kernel-2.6.32-220.23.1.el6/linux-2.6.32-220.23.1.el6.x86_64/
[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# cp /mnt/lvs-fullnat-synproxy/lvs-2.6.32-220.23.1.el6.patch .

6.打补丁

[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# patch -p1 < lvs-2.6.32-220.23.1.el6.patch

7.修改Makefile文件

[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# vim Makefile

VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 32
EXTRAVERSION = -220.23.1.el6.x86_64     #在这里增加一个版本号,一会编译出来的新内核就会将这个号作为后缀,方便识别
NAME = Man-Eating Seals of Antiquity
RHEL_MAJOR = 6
RHEL_MINOR = 2
RHEL_RELEASE = 219

8.安装

[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# make

[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# make modules_install

[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# make install

9.设置默认启动的系统

[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# vim /boot/grub/grub.conf

        ...

default=0      #0表示默认启动第一个系统,即2.6.32-220.23.1.el6.x86_64的内核系统
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.32-220.23.1.el6.x86_64)    #可以看到编译完内核之后grub文件里多出了这块内容
root (hd0,0)
kernel /vmlinuz-2.6.32-220.23.1.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-220.23.1.el6.x86_64.img
       ...

10.重新启动

[root@server5 linux-2.6.32-220.23.1.el6.x86_64]# reboot

查看现在系统的内核版本:

[root@server5 ~]# uname -a
Linux server5 2.6.32-220.23.1.el6.x86_64 #1 SMP Fri Jan 26 18:04:39 CST 2018 x86_64 x86_64 x86_64 GNU/Linux

 

转载于:https://www.cnblogs.com/vaon/p/8360566.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值