最近要交操作系統(tǒng)的作業(yè),其中一項(xiàng)就是編譯Linux系統(tǒng)的最新的內(nèi)核灼擂。
CentOS和RedHat是兩個(gè)很相似的Linux操作系統(tǒng)围详,比較穩(wěn)定,Ubuntu則是另一種比較流行的版本衩婚。
我在電腦上安裝的是最新版的CentOS7窜护,使用命令uname -a可以查看系統(tǒng)內(nèi)核版本。
百度上有一篇講解編譯內(nèi)核的教程非春,有參考價(jià)值柱徙,但是那個(gè)是CentOS6加上3.x的內(nèi)核。
http://jingyan.baidu.com/article/414eccf61296c16b421f0a63.html
第一步:到官網(wǎng)https://www.kernel.org/下載最新內(nèi)核4.3奇昙,下載tar.xz
第二步:解壓內(nèi)核
root用戶:# tar ?-Jxvf ?linux-4.2.3.tar.xz -C ?/usr/src/把文件解壓到 ?/usr/src/ 中
解壓文件护侮,現(xiàn)在一般采用 .tar.xz 的壓縮格式(壓縮率最高,但是壓縮時(shí)間較長(zhǎng))储耐。
/usr/src ?一般而言羊初、我們制做linux內(nèi)核的時(shí)候源碼一般放在這個(gè)路徑下。
第三步:
如果是第一次編譯內(nèi)核什湘,并沒有上次的殘留文件可以可以跳過
# make mrproper
這個(gè)步驟
注意:make clean 刪除大多數(shù)的編譯生成文件凳忙, 但是會(huì)保留內(nèi)核的配置文件.config业踏, 還有足夠的編譯支持來(lái)建立擴(kuò)展模塊
make mrproper 刪除所有的編譯生成文件, 還有內(nèi)核配置文件涧卵, 再加上各種備份文件
make distclean mrproper刪除的文件勤家, 加上編輯備份文件和一些補(bǔ)丁文件。
第四步:
接下來(lái)是 ? ?make ? config ?柳恐。
(具體參照 ? ?《make ? config ?的幾種類型》)
一般采用# ?make ? menuconfig的方式
是這個(gè)樣子的:
此處需要幾個(gè)包伐脖,選擇最簡(jiǎn)單的yum安裝,根據(jù)系統(tǒng)情況乐设,缺什么裝什么讼庇,已經(jīng)有的就不用再安裝了!
# ?yum -y install gcc和
# ?yum install ncurses ncurses-devel近尚。
具體配置選項(xiàng)可以自行查詢蠕啄,我是使用的默認(rèn)值!
對(duì)新的內(nèi)核功能選擇戈锻,并生成一個(gè) ?.config ?的文件歼跟,內(nèi)核編譯安裝的時(shí)候回從這里讀取配置!
第五步:編譯內(nèi)核(時(shí)間很長(zhǎng)格遭,可能一個(gè)多小時(shí))
# ?make和# ?make ?modules_install(此處命令必須進(jìn)入/usr/src/linux-x-x-x/才有效哈街,否則會(huì)報(bào)錯(cuò))
可能只需要一步,看情況吧拒迅!
第六步:安裝內(nèi)核(時(shí)間很長(zhǎng)骚秦,可能一個(gè)多小時(shí))
# make install
第七步:修改默認(rèn)啟動(dòng)內(nèi)核
# vim /boot/grub2/grub.cfg
其實(shí)啟動(dòng)的時(shí)候會(huì)依次列出系統(tǒng)有的內(nèi)核,從0開始數(shù)璧微,想啟動(dòng)那個(gè)就設(shè)置它的順序就OK了作箍!
第八步:重啟看到效果
完成!額前硫,我剛剛寫成了3就是這個(gè)效果蒙揣,其實(shí)應(yīng)該是2........