今天按如下流程升级了一下Linux Kenrnel内核,remark一下


1.系统更新
yum update
yum upgrade


2.检查目前版本
uname -a
Linux centos6 2.6.32-696.13.2.el6.x86_64 #1 SMP Thu Oct 5 21:22:16 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
cat /etc/redhat-release
CentOS release 6.9 (Final)


3.安装必要组件
[root@centos ~]# yum install vim wget
[root@centos ~]# yum install gcc gcc-c++ xz
[root@centos ~]# yum install bc
[root@centos ~]# yum install ncurses-devel
[root@centos ~]# yum install hmaccalc zlib-devel binutils-devel elfutils-libelf-devel


4.下载内核原文件
[root@centos ~]# cd /usr/local/src/
[root@centos ~]# wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.12.17.tar.xz
[root@centos ~]# tar -vxf linux-3.12.17.tar.xz
[root@centos ~]# cd linux-3.12.17
***/usr/local/src/linux-3.12.17此目录当编译目录,编译过程,操作都必须在此目录


5.清除以前编译内核生成文件
cd linux-3.12.17
make distclean 
清除以前编译内核生成的所有文件(除了清除可执行文件和目标文件外,configure所产生的Makefile也会清除掉)


6.复制配置文件
将系统默认的内核配置文件复制到linux-2.6.35.13目录下,并命名.config


7.内核配置(make menuconfig)
a)make config:基于文本的最为传统的配置界面,不推荐使用
b)make menuconfig:基于文本选单的配置界面,字符终端下推荐使用。
注意:使用make menuconfig 需要安装ncurses(yum -y install ncurses-devel) ,如果未安装会报如下错误:
c)make xconfig:基于图形窗口模式的配置界面,Xwindow下推荐使用
注意:如果要用make xconfig,则要先安装QT3开发包,并配置。如果未安装会报如下错误:


8.修改.config配置文件
在.config文件搜索CONFIG_SYSFS_DEPRECATED_V2,会发现# CONFIG_SYSFS_DEPRECATED_V2 is not set这一行,将该行修改为CONFIG_SYSFS_DEPRECATED_V2=y。假如不修改该行,在升级重新启动后会报如下的错,导致启动失败:


9.编译内核
make all
大概需要30至60分钟左右,具体时间看机子的性能


10.编译模块
make modules_install


11.安装
make install


12.修改grub.conf,让引导程序默认从新的内核启动
vi /boot/grub/grub.conf
default=0


13.重启电脑
#uname -r

Logo

更多推荐