Fedora安裝內核源碼

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-PAE-devel

安裝Kernel Source(內核源碼)

一般來說無須安裝Kernel Source除非你有一些特別的原因想要重新編譯你的內核源碼。無論如何Kernel hesders都是必須的。 
圍繞Kernel Sourcede的安裝有三個基本步驟。 
1.準備相關的環境 
2.下載你想要的內核源碼(與你當前的kernel想匹配如果需要) 
3.安裝SRC.RPM包 
4.使用rpmbuild將源碼轉換成可用狀態 
NOTE: 以下的步驟將消耗至少400MB磁盤空間!

準備相關的環境

在開始安裝之前,必須安裝兩個必要的軟件包,分別是:rpmdevtools 和yum-utils,可以使用如下命令安裝:

su -c ‘yum install yum-utils rpmdevtools’

安裝你之前選擇和下載的kernel.src.rpm,這個過程不能在root這個用戶下進行!!

設置目錄

rpmdev-setuptree

這個命令在當前的用戶目錄下生成了rpmbuild目錄。

下載內核源碼

通過’yum’來獲得內核源碼(對於最新的Fedora內核源碼) 
yum工具可以下載最新的內核源代碼。如果沒有找到,那麼這裏(還)沒有任何更新,那就使用默認的Fedora內核源碼。 
[wisfern@Wisfern Desktop]# yumdownloader –source kernel           (source選項前是兩個-)

安裝內核源碼

安裝依賴性軟件

su -c ‘yum-builddep kernel-<version>.src.rpm’

安裝*.src.rpm包

[wisfern@Wisfern Desktop]#sudo rpm -ivh kernel-2.6.32.11-99.fc12.src.rpm  
   1:kernel                  ########################################### [100%]

在安裝的過程中,如果出現如下錯誤:

warning: user mockbuild does not exist – using root 
warning: group mockbuild does not exist – using root 
新建一個組和一個帳號就好了。 
#gourpadd mockbuild 
#useradd mockbuild -g mockbuild 
然後再重新安裝

準備內核源碼

將源碼轉成可用狀態:  
進入SPECS目錄

cd ~/rpmbuild/SPECS

執行以下命令

rpmbuild -bp –target=$(uname -m) kernel.spec              (target選項前是兩個-)

源文件可以在~/rpmbuild/BUILD/kernel-2.6.32目錄中找到。這裏有兩個有用的目錄。 
1.linux-2.6.32.i686/arch 
這裏有包含了Fedora 補丁和更新的標準kernel.org內核源碼。系統架構與uname -m的輸出相匹配,一般來說是i686 ,如果你想,你可以讓–target=選項使用noarch參數。 
2.vanilla-2.6.32/ 
這裏只包含標準的kernel.org的kernel(沒有補丁和更新). 
NOTE: Fedora編譯和配置內核源碼的詳細過程可以在Fedora Wiki中找到。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章