歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> RHEL5.1系統內核版本2.6.18升級到內核版本2.6.30

RHEL5.1系統內核版本2.6.18升級到內核版本2.6.30

日期:2017/2/28 14:37:11   编辑:Linux教程

由於要編譯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

Copyright © Linux教程網 All Rights Reserved