RHEL5.1系统内核版本2.6.18升级到内核版本2.6.30

来源:互联网 发布:kali linux渗透教程pdf 编辑:程序博客网 时间:2024/05/16 09:51

        由于要编译X86平台上的linux模块,原操作系统上面没有配备内核源代码,所以无法编译内核,更不能进行内核模块的实验了。参考了很多的资料,决定对运行的linux的内核版本进行升级。最后升级成功。下面把方法总结如下:

         

一、环境

红帽子企业版5,在linux下进入root用户

#uname -r

2.6.18-53.el5

 

二、升级过程

1)         下载内核

升级之前到www.kernel.org看看有没有最新的内核,目前为止最新的是2.6.30,下载地址是:http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.bz2

 

2)    linux-2.6.30.tar.bz2拷贝到/usr/src目录下面,使用下面的命令解压,得到文件夹linux-2.6.30

tar xjvf linux-2.6.30.tar.bz2

 

3)         make mrproper

假如是第一次编译,这一步骤可以省掉的。

 

4)      复制原有的config文件到linux-2.6.30目录

#cd /usr/src/linux-2.6.30

# cp /boot/config-2.6.18-53.el5  .config

 

5)         make menuconfig

选择Load an Alternate Configuration File,导入.config文件,更加自己的需要添加功能或者进行精简。

注:内核配置有两种方法,一种是直接置入内核* ;另一种是编成模块M ;两种方法各有优点;直接编入内核的,比如设备的启动,不再需要加载模块的这一过程了;而编译成模块,则需要加载设备的内核支持的模块;但直接把所有的东西都编入内核也不是可行的,内核体积会变大,系统负载也会过重。我们编内核时最好把极为重要的编入内核;其它的如果您不明白的,最好用默认

6)        编译内核

             make bzImage

 

7)     编译内核模块

            make modules

8)       安装内核模块

            make modules_install

          (PS:将编译好的内核模块从内核源代码目录copy至/lib/modules下)

9)    制作init ramdisk

           mkinitrd  initrd-2.6.30   2.6.30

            (PS:2.6.30必须要在/lib/modules下可以找到)

10)   cp  arch/x86/boot/bzImage /boot/vmlinuz-2.6.30

           (PS: vmlinuz-2.6.30这个名字是可以随便取的)

11)   cp initrd-2.6.30 /boot/

12)     vi /etc/grub.conf

           (PS:主要是复制源内核那部分的,然后进行修改,主要修改部分为title和kernel和initrd)

13)     reboot

 

 

 


 

 

 

 

 

 

 

        

0 0
原创粉丝点击