有時需要一些個人需求,因此必須重新編譯kernel,以支援新的功能或者需求,因此需要重新編譯kernel,筆者參考了許多網路資訊後,最近也編了幾次核心,就貼出來和大家分享,如果有誤,也請高手指教。

1.$ sudo vim /etc/apt/sources.list <=可以換成自己比較喜歡的套件來源位址,小弟偏好使用高速計算機中心的套件來源。


2.$ sudo apt-get update <=更新到目前最新的套件資訊。


3.$ sudo apt-get install debhelper modutils kernel-package libncurses5-dev libncurses5 build-essential bin86 linux-kernel-devel fakeroot <=安裝編譯核心所需的相關套件


4.下載Kernel-Sources,在此筆者是使用手動下載2.6.24核心原始碼與Patch的方式來做說明。   
    前往ftp://free.nchc.org.tw/ubuntu/pool/main/l/linux/ ,下載linux_2.6.24.orig.tar.gz與linux_2.6.24-21.42.diff.gz,並將此兩個檔案下載到/usr/src的目錄底下。


5.$ sudo tar zxvf linux_(輸入你下載或安裝的Kernel Source版號).orig.tar.gz


6.$ sudo cd linux_xxxxx(xxx是解壓的版號)


7.$ /usr/src/linux-xxxxx/sudo zcat(bzip2 -dc) ../linux-2.6.24-21.42.diff.gz(bz2) | patch -p1 <=將最新版本的Patch安裝上去


8.$ sudo cp -vi /boot/config-`uname -r` .config


9.$/usr/src/linux-xxxxx/ sudo make menuconfig


10.會出現文字模式的選單,請自行選擇所需要項目,必要的可以考慮編譯成核心(*),非必要的可以選擇編譯成模組(M),最後要記得儲存configure


11.$/usr/src/linux-xxxxx/make-kpkg clean <=清理核心的動作,如果曾經編譯過,非必要,但建議

 

12. $/usr/src/linux-xxxxx/fakeroot make-kpkg --initrd --revision=2.6.24-21.42-1(=後面輸入自己想要的編號或文字) kernel_image kernel_headers

 

13.喝個水,看的報紙,上個網...waiting(依所選的項目多寡與系統處理速度決定時間的快慢)

 

14.如果編譯完成後,會在/usr/src/的目錄下看到linux-image-xxxxx.deb與linux-headers-xxxxx.deb的檔案


15.sudo dpkg -i linux-*.deb <=就會將剛剛所編譯好的兩個新核心檔案給安裝起來


16.# sudo vim /boot/grub/menu.lst <= 理論上在上一步會自動將Grub也設定好,還是自己檢查一下/boot/grub/menu.lst


17.如果都沒問題...就可以使用新核心重開機囉

 


資料來源: 1. https://help.ubuntu.com/community/Kernel/Compile

               2. http://freesf.tnc.edu.tw/docs/debian/ch-kernel.zh-tw.html

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 robert1030 的頭像
    robert1030

    生活_心情_資訊分享

    robert1030 發表在 痞客邦 留言(0) 人氣()