CentOS系统中编译和升级内核

可能因为以下几种原因,你可能需要对Linux kernel内核进行升级操作。

  • 想要尝试一个新的内核模块
  • 设备驱动需要新的内核功能模块支持
  • 旧版本的内核有新的漏洞被发现
  • 系统经常容易崩溃

不管因为什么原因,每一个Linux用户对Linux内核进行升级,是一个很重要的维系统护工作。

下面我们来学习在CentOS 6.4系统下,将Linux kernel 2.6.32升级到Linux kernel 3.2.48 LTS。

1、先检查系统的当前内核版本

$ uname -r

2.6.32-358.el6.x86_64

在开始升级下,需要安装一些构建内核的必需的依赖软件包

$ sudo yum groupinstall “Development Tools”
$ sudo yum install ncurses-devel

然后,安装现有的系统更新

$ sudo yum update

2、开始安装内核
kernel.org下载新的内核源码包3.2.48 LTS,然后对其进行编译安装

$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.48.tar.xz
$ sudo tar xvfvJ linux-3.2.48.tar.xz -C /usr/src
$ cd /usr/src/linux-3.2.48

编译一个新的内核之前,你需要生成一个内核配置。如果你想通过图形用户界面生成一个内核配置,运行:

$ sudo make menuconfig

另外,如果你想使用相同的内核配置为当前运行的内核,运行下面的命令:

$ sudo make oldconfig

如果你想使用旧内核配置,并自动接受每一个选项的默认设置,请运行以下命令:

$ sudo sh -c ‘yes “” | make oldconfig’

内核设置完成后,开始编译新的内核

$ sudo make

上述步骤将需要30分钟或更长时间,这取决于你的CPU速度。编译完成后,下一步安装新的内核(和所有的内核模块)如下:

$ sudo make modules_install install

3.设置启动项
要在您的系统中使用新编译的内核,请在grub菜单中设置启动顺序

$ sudo vi /boot/grub/grub.conf
default=1

同时发布于J4ML

你可能感兴趣的:(linux,centos)