Ubuntu編譯內核

內核編譯:(部分摘錄自http://forum.ubuntu.org.cn/viewtopic.php?t=134404)

1.到http://www.kernel.org下載需要編譯的內核源碼文件;

2.安裝有關編譯程序。安裝make ,gcc, make-kpkg,運行menuconfig等等和編譯內核相關的工具。

安裝不了,請檢查/etc/apt/sources.list 文件。 有關命令:

指令:

$sudo  apt-get install build-essential kernel-package  libncurses5-dev

3.解壓源代碼 內核源碼文件爲了編譯管理建議放在/boot/usr/src/kernel/目錄下,如果當前之目錄所在的磁盤空間不足,也可解壓到其他目錄下。

解壓指令: mkdir src && tar jfx linux-2.6.25.10.tar.bz2 -C src/

4.進入內核源碼文件夾 cd  /usr/src/kernel/linux-...

5.開始編譯前的準備工作。 首先,清理以前編譯時留下的臨時文件。如果是剛剛解開的包,不需要執行這步。如果是第二次或者是第n次編譯,那麼一定要執行。

相關命令如下: $ sudo make mrproper

網上很多教程上說把現在使用的內核的config拷貝過來參考,據實驗,是不需要的,ubuntu還有 debian會自動做這步。不過這條命令倒是可以學習一下。當然你可以將以前的配置拷貝過來。 命令:

代碼:

cp /boot/config-`uname -r` ./.config
6.開始配置內核選項。 相關命令:

代碼:

$sudo make menuconfig (此時最好選擇加載之前的內核.config文件在之前的配置基礎上添加新的需要添加的新特性生成新的.config文件,內核選項的具體解析請參考其他博客)

7.、開始編譯內核。 ubuntu的工具是make-kpkg,和其他的發行版相比,步驟相對簡單。 相關命令:

代碼:

$sudo make-kpkg clean 

這條命令好像不要超級權限,很多資料上說要,不過這不是原則問題。

$ sudo make-kpkg --initrd --append-to-version=dell1400 kernel-image kernel-headers

編譯完成後,將會再當前目錄的上級目錄下生成兩個文件,linux-image-...,linux-headers-...文件,這就是我們需要的內核包。

8.安裝編譯好的內核包 進入當前內核源碼目錄的上級目錄,進行安裝: 指令:

cd ..

$ sudo dpkg -i   linux-image-(按tab鍵)

$ sudo dpkg -i  linux-headers-(按tab鍵)
9.安裝成功後重啓電腦,選新內核啓動:

指令: $ reboot


===================================================================
內核卸載: 首先就是使用如下命令,列出所有安裝的內核,下表中,帶有image的就是內核文件。 從中選擇要卸載的包,用apt-get來卸載
[tc@ibm:~]$ dpkg --get-selections|grep linux

libselinux1                                     install

linux-386                                      install

linux-image-2.6.15-23-386                    install

linux-image-2.6.15-27-386                    install

linux-image-2.6.15-27-686                    install

linux-image-2.6.15-28-386                    install

linux-image-2.6.15-28-686                    deinstall

linux-image-386                               install

linux-kernel-headers                           install

linux-restricted-modules-2.6.15-23-386        install

linux-restricted-modules-2.6.15-27-386        install

linux-restricted-modules-2.6.15-27-686        install

linux-restricted-modules-2.6.15-28-386        install

linux-restricted-modules-2.6.15-28-686        deinstall

linux-restricted-modules-386                   install

linux-restricted-modules-common               install

linux-sound-base                               install

util-linux                                       install

具體的卸載方法爲 sudo apt-get remove linux-image-(接內核版本) sudo apt-get remove linux-headers-(接內核版本)

執行上述兩條指令就可以實現自動刪除內核文件了,還可以釋放磁盤空間。


此時再執行 dpkg --get-selections|grep linux 可以看到需要刪除的內核文件已經不存在了-----卸載內核成功!


發佈了12 篇原創文章 · 獲贊 16 · 訪問量 21萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章