最近試著改source code重新編譯kernel,把步驟記錄下來

我的環境為

  • ubuntu 16.04 server
  • kernel version 4.4

安裝必要套件

$ sudo apt-get install build-essential ncurses-dev libssl-dev build-essential ncurses-dev xz-utils kernel-package

下載linux kernel並解壓縮

因為開機時會自動載入新版kernel,所以我選了kernel version 4.5!如果裝的版本較舊,在開機時可以按住shift進入開機選單做選擇。

$ wget https://github.com/torvalds/linux/archive/v4.5.tar.gz
$ tar -xvf v4.5.tar.gz
$ cd linux-4.5/

設定config檔

複製原有的config檔案,重新存成一份.config

$ cp /boot/config-4.4.0-21-generic .
$ make menuconfig

編譯kernel

-j 4 代表使用四核心進行編譯,可以加快速度

$ sudo make -j 4 clean
$ sudo make -j 4
$ sudo make modules -j 4
$ sudo make modules_install
$ sudo make install

參考資料