Ubuntu 11.04下編譯kernel 1. 下載並解壓Linux核心原始碼, 核心源碼為www.kernel.org,查看當前核心版本命令為uname -r。下載後解壓至目錄/usr/src.2. 解壓完成後在終端下進入/usr/src/linux-2.6.34.13目錄(其中2.6.34.13為我使用的版本號碼)3. 輸入命令make mrproper,此命令用於清除以前編譯產生的.o等其它檔案,若為第一次編譯此步驟可省略. www.2cto.com 4. 運行make menuconfig報錯,提示需要安裝ncurses的庫: apt-get install libncurses5-dev 5. make menuconfig6. make 編譯:1)在/usr/src/linux-2.6.34.13/arch/x86/boot/下產生bzImage, vmlinux.bin, setup.elf, setup.bin, tools/build。 2)編譯modules, MODPOST. www.2cto.com 7. make modules_install, make install 此時核心各模組便安裝完成,grub啟動項也會自動修改(?)8. mkinitramfs -o /boot/initrd.img-source_version -v source_version For my example, mkinitramfs -o /boot/initrd.img-2.6.34.13 -v 2.6.34.13 執行此命令將產生剛剛編譯核心的鏡像。其中命令mkinitramfs可分拆為“make init ram FileSystem”理解,2.6.34.13為正在編譯的核心版本,不可隨意更改。但“initrd.img-2.6.34.13”為所產生的核心鏡像檔案名,可根據自己需要進行修改、區別。 9. update-grub: 遍曆/boot/目錄下的檔案,更新/boot/grub/grub.cfg10. reboot.