2016年8月24日 星期三

Ubuntu 16.04 compile latest Kernel

Ubuntu 16.04 編譯最新 Kernel 與安裝

在ubuntu 編譯與安裝kernel是比較簡單的,甚至連grub都會幫你安裝好

1. 抓最新的kernel版本(文章發表時版本為:4.8.0-rc3+)

$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git


2.將資料夾複製到 /usr/src

$ sudo mv linux-2.6/ /usr/src/


3.安裝編譯需要的套件

$ sudo apt-get install  ncurses ncurses-devel kernel-package libncurses5-dev libc6-dev libssl-dev modutils build-essential

libncurses5-dev  是為了可以使用 menuconfig 指令
libssl-dev  是編譯時需要


4. 進到切換到root 進到/usr/src/linux-2.6/

$ sudo su -
$ cd /usr/src/linux-2.6/


5.複製現有已經可以使用的.config

$cp /boot/config-4.4.0-34-generic ./.config

/boot/config-4.4.0-34-generic 資料夾會根據你的kernel不同不一樣


6.使用menuconfig 設定

make menuconfig
可以先load剛剛複製的.config檔在自己做喜好設定,完成後save。


7.編譯

$ fakeroot make-kpkg -j 4 --initrd kernel_image kernel_headers


8.安裝

$ dpkg -i linux-image-4.8.0-rc3+_4.8.0-rc3+-10.00.Custom_amd64.deb
$ dpkg -i linux-headers-4.8.0-rc3+_4.8.0-rc3+-10.00.Custom_amd64.deb

如果怕grub沒有幫你更新的化可以使用update-grub
$ update-grub

注意!安裝時/boot 要有足夠的硬碟空間,至少256M會比較保險!
如果電腦同時間有window要注意/boot/efi的位置!


9.重開機

$ reboot

應該預設的ubuntu第一個選項就是最新安裝好的kernel,但如果沒有可以到進階選項進入選擇不同kernel開機,如果編輯失敗也可以在進階選項回到原本正常的kernel

可以正常開機就恭喜你了!



沒有留言:

張貼留言