centos6編譯內核新手教程

一、下載內核

https://www.kernel.org/pub/linux/kernel/

二、開始編譯內核

   首先是先進入到解壓後的內核目錄。

2.1

   一般來講,我們拿到新內核之後,應該執行清理殘餘配置的步驟。

make mrproper
make clean

2.2

   編輯Makefile文件,簡單的做些自定義。

ERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 32
EXTRAVERSION = -shanks.1.x86_64
#這樣修改之後,你的內核名稱(uname -r)就會是2.6.32-shanks.1.x86_64

2.3

   make menuconfig

2.4


make -jn all
#對於一臺測試機而言,n可以等於cpu個數的2倍

2.5

make modules_install

2.6    


cd /boot
cp /usr/src/linux-2.6.32/arch/x86/boot/bzImage vmlinuz-2.6.32-shanks.1.x86_64
cp /usr/src/linux-2.6.32/.config config-2.6.32-shanks.1.x86_64
#centos6之後,你可以用dracut來代替mkinitrd
dracut -f -v -H -k '/lib/modules/2.6.32-shanks.1.x86_64/' initramfs-2.6.32-shanks.1.x86_64.img 2.6.32-shanks.1.x86_64

2.7

   vi /boot/grub/grub.conf


#在原有配置的基礎上,複製出4行配置,之後做修改:
#只要修改title、kernel、initrd三行。
#示例:
title CentOS (2.6.32-shanks.1.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-shanks.1.x86_64 ro root=/dev/mapper/vg_livedvd-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_LVM_LV=vg_livedvd/lv_root rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_livedvd/lv_swap  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /initramfs-2.6.32-shanks.1.x86_64.img
#最後,記得看下default這行配置,如果你新內核的4行配置是所有title中的第一個,那麼default後面的值應該是0

2.6、2.7這兩步可以用make install替代,但需要手動修改kernel的啓動順序

三、重啓

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章