在Debian上編譯linux內(nèi)核,本質(zhì)上沒什么不同,只是需要生成inittrd相關(guān)東西,以下記錄debian下標(biāo)準(zhǔn)的編譯內(nèi)核流程
原來參考的帖子是在虛擬機上裝的,僅供參考.
1. 準(zhǔn)備系統(tǒng)環(huán)境
首先從官網(wǎng)下載 最新版的VirtualBox 和Debian Wheezy 7.3.0的32位網(wǎng)絡(luò)安裝版CD鏡像文件( debian-7.3.0-i386-netinst.iso )。然后就可以載入光盤開始安裝了,安裝的時候有幾點需要注意:
2. 下載內(nèi)核源碼,安裝必需的軟件
Debian Wheezy默認沒有提供sudo工具,所以可以先把它裝上。
- su root...
- apt-get install sudo
- exit
但是現(xiàn)在還是不能使用sudo,為了能讓普通用戶能夠使用sudo,需要將用戶加到/etc/sudoers文件中。
su root...vi /etc/sudoers
再次進入特權(quán)模式,找到文件中的下面這一行:
root ALL=(ALL:ALL) ALL
在下面添加一行,變成這樣(其中feng32是作者的用戶名):
- root ALL=(ALL:ALL) ALL
- feng32 ALL=(ALL:ALL) ALL
然后退出保存,就可以使用sudo來臨時獲得管理員權(quán)限了。接著安裝使用更方便的vim,方便之后的操作:
- exit
- sudo apt-get install vim
接著安裝兩個編譯內(nèi)核 真正需要 的軟件包:
- sudo apt-get install kernel-package
- sudo apt-get install libncurses5-dev
最后從kernel.org上下載Linux內(nèi)核源碼。這里我選擇的是最新的longterm版本3.12.14。
wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.12.14.tar.xz
3. 解壓內(nèi)核源代碼
Debian Wheezy默認就整合了xz工具,所以可以直接解壓。
xz -d linux-3.12.14.tar.xztar xf linux-3.12.14.tar
4. 配置、編譯內(nèi)核
解壓得到約520MB的文件,位于當(dāng)前用戶的home目錄下。接著從現(xiàn)有的內(nèi)核中獲取配置信息,運行:
cd linux-3.12.14make oldconfig
配置系統(tǒng)會詢問很多新出現(xiàn)的配置選項,直接回車選擇默認項即可。然后運行:
make menuconfig
確保你需要的特性都已經(jīng)包括,按ESC退出配置。最后運行下面的指令開始編譯:
- make-kpkg clean
- fakeroot make-kpkg --initrd --append-to-version=-hlcodel --revision=1.0 kernel_image
在虛擬機中,單線程編譯3.12.14內(nèi)核大約要花費1.5小時。在編譯完成之后,home目錄下出現(xiàn)了一個deb文件:linux-image-3.12.14-hlcodel_1.0_i386.deb。
5. 安裝內(nèi)核
使用下面的命令安裝這個deb包:
dpkg -i linux-image-3.12.14-hlcodel_1.0_i386.deb
完成后重啟,然后運行unamr –r,如果出現(xiàn)下面的輸出,則代表安裝已經(jīng)完成了:
3.12.14-hlcodel
聯(lián)系客服