日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

(zz)编译Ubuntu Linux内核

發(fā)布時(shí)間:2023/12/19 linux 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (zz)编译Ubuntu Linux内核 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
準(zhǔn)備
先確認(rèn)有基本的編譯環(huán)境,否則執(zhí)行:
$ sudo apt-get install build-essential
:此命令將會(huì)安裝 glibc、glibc++等等相關(guān)的庫(kù)及頭文件。

環(huán)境說(shuō)明
OS: Ubuntu 9.04 (jaunty)
kernel: linux-2.6.28-12-generic
gcc:?? 4.3.3
:Ubuntu 9.04 默認(rèn)使用的內(nèi)核是 linux-2.6.28-11-generic,由于我安裝過(guò)更新包,所以是 linux-2.6.28-12-generic

開始
1. 下載內(nèi)核源代碼,這里我下載的內(nèi)核是 linux-2.6.29.3
$ wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.29.3.tar.bz2
linux-2.6.29.3 發(fā)布于 2009-05-08,在寫這篇文章時(shí)它是最新的內(nèi)核,不過(guò)由于linux內(nèi)核更新很頻繁,每2~3周就會(huì)發(fā)布一個(gè)新版本,所以很快這個(gè)就會(huì)過(guò)時(shí);如果你總是需要最新的版本,最好還是到 kernel.org 看看

2. 解壓
$ tar xjvf linux-2.6.29.3.tar.bz2

3. 配置內(nèi)核
Ubuntu 的內(nèi)核配置文件保存在 /boot 目錄下,如 9.04 的配置文件是 /boot/config-2.6.28-11-generic,為了通用性,可以使用以下命令:
$ cd linux-2.6.29.3
$ sudo cp /boot/config-`uname -r`-generic ./.config
為了遵循 Ubuntu 對(duì)其內(nèi)核的命名方式,需要修改 Makefile 的 EXTRAVERSION,打開Makefile,找到該行(一般就在前幾行中)并修改為:
EXTRAVERSION = -3-generic
:其中3是內(nèi)核版本號(hào)2.6.29.3的最后一位,generic是 Ubuntu 的命名習(xí)慣。

4. 編譯內(nèi)核
$ make mrproper
:清理內(nèi)核代碼樹,基本上編譯內(nèi)核之前最好都要進(jìn)行這一步。

$ make menuconfig

選擇 'Load an Alternate Configuration File'

OK即可。
:make menuconfig 是一個(gè)文本形式的圖形界面配置環(huán)境,如果你喜歡更高級(jí)的圖形界面配置環(huán)境,GNOME用戶可以輸入 make gconfig,KDE用戶可以輸入 make kconfig
:(make gconfig)


這樣就加載了默認(rèn)的內(nèi)核配置,然后可以在此基礎(chǔ)上自己定制。
:如果你對(duì)自己不那么有信心,建議你使用默認(rèn)的配置;否則,根據(jù)自己計(jì)算機(jī)的硬件和自己的需求定制內(nèi)核是最好的方式。

定制完后保存:

退出配置界面后回到命令行,執(zhí)行:
$ make
$ sudo make modules_install

5. 生成initrd.img
$ sudo mkinitramfs -o /boot/initrd.img-2.6.29-3-generic

6. 安裝內(nèi)核
$ sudo cp arch/x86/boot/bzImage /boot/vmlinuz-2.6.29-3-generic

7. 其他
$ sudo cp System.map /boot/System.map-2.6.29-3-generic
$ sudo cp .config /boot/config-2.6.29-3-generic
$ cd /
$ sudo rm vmlinuz initrd.img
$ sudo ln -s boot/vmlinuz-2.6.29-3-generic vmlinuz
$ sudo ln -s boot/initrd.img-2.6.29-3-generic initrd.img

8. 修改 GRUB 菜單
用喜歡的文本編輯器打開 /grub/menu.lst,添加對(duì)應(yīng)的菜單項(xiàng)(這個(gè)應(yīng)該很簡(jiǎn)單,可以參考舊的菜單項(xiàng))

9. 重啟(使用新內(nèi)核)
如果你決定不再使用舊的內(nèi)核,可以考慮刪除舊的內(nèi)核模塊(因?yàn)樗鼈兒苷即疟P空間),這些模塊位于 /lib/modules 下,如刪除 2.6.28-12-generic 模塊:
:不建議進(jìn)行這一步,畢竟新編譯的內(nèi)核沒有與發(fā)行版相關(guān)的 linux-headers,如果你想做一些開發(fā)的話則不能夠缺少這些頭文件!(目前我還不知道怎么做,不過(guò)可以肯定的是絕對(duì)不是 make headers_install 這么簡(jiǎn)單)
$ sudo rm -rvf /lib/modules/2.6.28-12-generic

:如果系統(tǒng)上安裝了 VirtualBox,還要重新編譯VirtualBox的內(nèi)核模塊,執(zhí)行:
$ sudo /etc/init.d/vboxdrv setup

未解決問(wèn)題
生成特定于發(fā)行版(Ubuntu)的內(nèi)核頭文件。

:(系統(tǒng)監(jiān)視器截圖)

出處:http://hi.baidu.com/benzus/blog/item/9f5dc20ee5647dc27acbe144.html

轉(zhuǎn)載于:https://www.cnblogs.com/pangpangxiongxiong/archive/2009/07/17/1525405.html

總結(jié)

以上是生活随笔為你收集整理的(zz)编译Ubuntu Linux内核的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。