歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux內核 >> 建立一個定制Linux內核

建立一個定制Linux內核

日期:2017/2/28 15:50:00   编辑:Linux內核

1. 從源碼RPM包建立一個內核
1.1. 獲得源碼
1.2. 准備內核源碼樹
1.3. 復制源碼樹和生成一個補丁
1.4. 配置內核選項
1.5. 准備建立文件
1.6. 建立新內核
1.6.1. 以下是通用教材
1.7. 安裝新內核
2. 只建立內核模塊(kernel modules)

1. 從源碼RPM包建立一個內核
注意:下面的說明只對Fedora12和之後版本有效

這份文檔為那些想要重新建立內核的高級用戶提供說明。但是,重新建立的內核無法得到Fedora內核團隊的支持。但是,您是高級用戶,您可以自己處理,對嗎?無論如何,高級用戶建立定制內核的原因有如下幾項:

* 測試他們編寫的或從其他地方得到的補丁。

* 重新配置已經存在的內核。

* 學習內核或內核開發。

這些說明也可以用於簡單的准備內核源碼樹。

開始之前,確認系統已經安裝了必要的軟件包:

* rpmdevtools

* yum-utils

yum-utils是一個默認的包。用如下命令安裝:

su -c 'yum install rpmdevtools yum-utils'

如果您要用make xconfig,安裝如下軟件是必要的:

* qt3-devle

* libXi-devel

* gcc-c++

對於Fedora 15,用如下命令:

su -c 'yum install qt3-devel libXi-devel'

1.1. 獲得源碼
不要用root建立軟件包

用root建立軟件包是很危險且沒有必要的,即使對於內核。下面的指令允許任何普通用戶從源碼包開始建立和安裝內核

1. 在您的用戶主目錄下准備一個建立RPM包的環境,運行如下命令:

rpmdev-setuptree

這個命令新建了幾個不同的目錄${HOME}/rpmbuild/SOURCES, ${HOME}/rpmbuild/SPECS和${HOME}/rpmbuild/BUILD 。${HOME}是您的用戶主目錄。

2. 下載kernel-<version>.src.rpm文件。用--enablerepo選項使能適當的源碼庫。(yumdownloader --enablerepo=repo_to_enable --source kernel)

yumdownloader --source kernel

3. 用yum-builddep命令為內核源碼安裝編譯依賴。

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

4. 用如下命令安裝kernel-<version>.src.rpm

rpm -Uvh kernel-<version>.src.rpm

這個命令把RPM目錄寫入了${HOME}/repbuild/SOURCES和${HOME}/rpmbuild/SPECS,${HOME}是您的用戶主目錄。可以忽略像下面這樣的信息:

warning: user kojibuilder does not exist - using root

warning: group kojibuilder does not exist - using root


空間需求。完全的內部編譯過程需要若干GB的額外空間。

1.2. 准備內核源碼樹
這一步擴大為整個內核源碼文件。這對於查看代碼、編輯代碼和生成補丁是必需的。

1. 用如下命令准備內核源碼樹:

cd ~/rpmbuild/SPECS

rpmbuild -bp --target=$(uname -m) kernel.spec

現在,內核源碼樹就位於~/rpmbuild/BUILD/kernel-<version>/linux-<version>.<arch>目錄。

Copyright © Linux教程網 All Rights Reserved