Fedora內核源碼經過長時間的發展,很多用戶對Fedora 12 都很了解了,這裡我發表一下個人理解,和大家討論討論。目前也有中文版本的Linux,如RedHat(紅帽子),紅旗Linux等。在國內得到了用戶充分的肯定,主要體現在它的安全性和穩定性方面,它與Unix有許多類似之處。但目前這類操作系統目前使仍主要應用於中、高檔服務器中。
安裝Kernel Headers(頭文件)
這個包提供Kernel Headers和makefiles足以應付kernel包中的模塊編譯。如果你需要安裝驅動和某些第三方軟件,你應該很需要Kernel Headers。如果一個驅動要求內核源碼,那麼也許安裝Kernel Headers就已經足夠了。Kernel Headers通過安裝kernel-devel RPM包就可以得到。這個包可能沒有被Fedora自動安裝。這個軟件包可以從你的Fedora DVD安裝或者通過FTP和YUM在線安裝。在Fedora軟件倉庫和Update軟件倉庫中在線查找同時確保他們與你的系統相匹配,使用uname命令。示例:
[wisfern@Wisfern ~]$ uname -rm
2.6.32.11-99.fc12.i686.PAE i686
如果你已經升級過你的kernel(使用yum),那麼建議你使用yum來安裝這個軟件包。
[wisfern@Wisfern ~]$ sudo yum install kernel-devel
安裝Kernel Source(內核源碼)
一般來說無須安裝Kernel Source除非你有一些特別的原因想要重新編譯你的內核源碼。無論如何Kernel hesders都是必須的。
圍繞Kernel Sourcede的安裝有三個基本步驟。
1.下載你想要的內核源碼(與你當前的kernel想匹配如果需要)
2.安裝SRC.RPM包
3.使用rpmbuild將源碼轉換成可用狀態
NOTE: 以下的步驟將消耗至少400MB磁盤空間!
下載內核源碼
獲得內核源碼(對於默認的Fedora內核源碼)默認的內核源碼可以通過任意Fedora鏡像找到。在”/12/”目錄下的 “/source/SRPMS/”目錄中可以找到。示例:http://download.fedora.redhat.com/pub/fedora/linux/releases/12/Fedora/source/SRPMS/。
獲得源碼(對於已經升級過的Fedora內核源碼)
如果你升級了你的內核,那麼通常來說通過Fedora updates會有2或3個內核源碼是可用的。
在大多數Fedora鏡像站點上的update目錄中尋找。示例:http://download.fedora.redhat.com/pub/fedora/linux/updates/12/SRPMS/。
通過’yum’來獲得內核源碼(對於最新的Fedora內核源碼)
yum工具可以下載最新的內核源代碼。如果沒有找到,那麼這裡(還)沒有任何更新,那就使用默認的Fedora內核源碼。
[root@Wisfern Desktop]# yumdownloader – source kernel
安裝內核源碼
安裝你之前選擇和下載的kernel.src.rpm
[root@Wisfern Desktop]# rpm -ivh kernel-2.6.32.11-99.fc12.i686.rpm
Preparing… ########################################### [100%]
1:kernel ########################################### [100%]
准備內核源碼
將源碼轉成可用狀態:
[mirandam@charon downloads]$ sudo rpmbuild -bp –target=$(uname -m) /usr/src/redhat/SPECS/kernel.spec
源文件可以在/usr/src/redhat/BUILD/kernel-2.6.23/目錄中找到。這裡有兩個有用的目錄。
1.Linux-2.6.23.ARCH/
這裡有包含了Fedora 補丁和更新的標准kernel.org內核源碼。系統架構與uname -m的輸出相匹配,一般來說是i686 ,如果你想,你可以讓–target=選項使用noarch參數。
2.vanilla/
這裡只包含標准的kernel.org的kernel(沒有補丁和更新).
NOTE: Fedora編譯和配置內核源碼的詳細過程可以在Fedora Wiki中找到。