ubuntu 升級內核


hjj@ubuntu:/usr/src$ uname -r
2.6.32-38-generic
下載一個2.6.33 的內核

一: 編譯
make mrproper ---->

make menuconfig --->
'make menuconfig' requires the ncurses libraries.
Ncurses是一個能提供功能鍵定義(快捷鍵),屏幕繪制以及基於文本終端的圖形互動功能的動態庫。
sudo apt-get install libncurses5-dev
注:

可以直接 save , exit 直接生成 .config 文件,(當然也可以裁剪)
也可以使用當前系統配置文件,使用當前系 統配置文件方法:
/linux-2.6.32#cp /boot/config-XX ./.config
,然后進入 menuconfig 選擇 load 選項

make ---> 是一個漫長的等待過程, 一般幾個小時 編譯那些module 花了大量時間 ,kernel, modules 都生成了。
如果你一定要知道編譯進展到何種程度。 可以打開.config, 對照一下正在編譯的模塊.
2千多個模塊,我的天。 直接編譯進內核的特性也有1千多種, 小型系統,急需刪減。

make modules_install // 時間也比較長, 有很多模塊需要安裝。才能支持你的顯卡,聲卡。。。。等設備
make install // 升級內核...

要保證正確性, 出現問題要解決。

例如,出現錯誤

ERROR: modinfo: could not find moduleautofs4 ....

是因為沒有運行 make modules_install 而直接運行make install.

結果導致內核不能正常啟動。

二. 生成啟動

手工生成 ram disk (高版本好像自動生成了, 所以視情況可能不需要)
hjj@ubuntu:/boot$ sudo mkinitramfs -o /boot/initrd.img-2.6.33.2 2.6.33.2
2.6.33.2是在/lib/modules中的目錄名,對應內核的版本, ramfs 會加進一些模塊代碼

sudo update-grub2 // 自動修改系統引導配置,產生 grub.cfg 啟動文件。

三. 運行
啟動完成后
使用uname -a 命令查看,可以看到當前內核已經被更新了。

四. 查看grub 啟動菜單

  1. 需要修改/etc/default/grub其中的第5行:
    GRUB_HIDDEN_TIMEOUT=0(默認是0,修要修改成大於0的值,比如10)
    保存后退出!
    2、再執行:
    sudo update-grub

重啟系統,等到系統提示按 shift 鍵進入

centos 已經進化到不再使用update-grub 來更新內核, 放到boot 目錄,修改/etc/grub.conf 就可以了

作者:hejinjing_tom_com
來源:CSDN
原文:https://blog.csdn.net/hejinjing_tom_com/article/details/9618557
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM