ubuntu命令安裝內核源碼及升級內核源碼



ubuntu命令安裝內核源碼
 
sudo apt-get install linux-source 會自動安裝當前版本內核的源代碼到 /usr/src
 
升級內核源碼:

  1.將下載過來linux源代碼包(tar.bz2包)解壓到/usr/src下。若是你還不知道怎麼解壓,請google之~解壓完畢後能夠在/usr/src目錄下看到一個linux-2.6.31.6的文件夾linux

  2.轉移目錄至linux-2.6.31.6用以下命令:ubuntu

  cd /usr/src/linux-2.6.31.6ui

  3.先配置Ubuntu內核:google

  make menuconfigget

  具體怎麼配置我不清楚,不過這個基本上不用怎麼配置的,直接選最後一項,save,exit就OK了源碼

  4.接着開始編譯Ubuntu內核:makeit

  這是一個漫長的過程,慢慢等吧~~這個花了我將近一個半小時的時間編譯

  5.加入模塊:class

  make modules_installmodule

  6.生成可執行的Ubuntu內核引導文件:

  make bzImage (注意i字母要大寫)

  7.將bzImage複製至/boot下:

  cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.31.6 //2.6.32Ubuntu內核的bzImage目錄爲arch/x86/boot/bzImage

  8.清除多餘的建立文件:

  make clean //這一步最好仍是留到最後來作(如今能夠先不跳過這一步),這樣的話,即便你後面操做失誤也能夠回到這裏重作,而不須要從新編譯

  9.將System.map複製至/boot下:

  cp System.map /boot/System.map-2.6.31.6

  10.生成initrd.img 這個很重要,我開始弄錯了這個,害的我白重啓了一次。命令:

  cd /lib/modules/2.6.31.6

  sudo mkinitramfs -o /boot/initrd.img-2.6.31.6 //2.6.32能夠爲sudo update-initramfs -c - k 2.6.32

  11.自動查找新Ubuntu內核,並添加至grub引導:

  sudo update-grub

  這個過程也能夠手動完成,方法是更改/boot/grub目錄下menu.lst文件。這個文件引導系統的啓動,結構很簡單,就是指定引導文件而已,能夠參考已有的啓動項修改,個人是在該文件中添加以下內容:

  title Ubuntu 9.04, kernel 2.6.31

  uuid 753efade-04e8-4e2c-8bbb-965e9792b2f5

  kernel /boot/vmlinuz-2.6.31.6 root=UUID=753efade-04e8-4e2c-8bbb-965e9792b2f5 ro quiet splash

  initrd /boot/initrd.img-2.6.31.6

  //9.10採用的是Grub2 啓動文件用grub.cfg代替 該文件所在目錄爲/boot/grub 若手動添加爲可參考以下:

  menuentry "Ubuntu, Linux 2.6.32" {

  recordfail=1

  if [ -n ${have_grubenv} ]; then save_env recordfail; fi

  set quiet=1

  insmod ext2

  set root=(hd0,3)

  search --no-floppy --fs-uuid --set 3c611c5f-f941-4970-956f-fe4c7bf75714

  linux/boot/vmlinuz-2.6.32 root=UUID=3c611c5f-f941-4970-956f-fe4c7bf75714 ro quiet splash

  initrd/boot/initrd.img-2.6.32

  12.重啓電腦:reboot 你會發現啓動項裏多了一個Ubuntu 9.04, kernel 2.6.31(Ubuntu, Linux 2.6.32)的選項,選擇這個,進入系統。

  以上介紹Ubuntu內核更新。

相關文章
相關標籤/搜索