簡介
在調試代碼過程中需要用到最新版本內核,上網學習良久,總結並輸出這文章,方便自己將來查詢。
本文不講解原理,屬於工具文,為方便閱讀,盡可能只提示如何操作。
查詢當前本機內核版本
$ uname -r
安裝Ubuntu官方釋放版本
從Ubuntu官方提供的內核鏈接中獲取所需要的內核版本,鏈接https://kernel.ubuntu.com/~kernel-ppa/mainline/
從選擇的內核版本中下載以下3個文件:
linux-headers-*_amd64.deb
linux-headers-*_all.deb
linux-image-*-generic_*amd64.deb
上述的 *
號表示模糊匹配,amd64
適用於64位amd架構的環境,可根據自己的情況選擇對應的架構。
下載后用 dpkg
正常安裝后重啟即可
$ sudo dpkg -i *.deb
一鍵安裝腳本
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
源碼安裝
從Linux官網獲取內核源碼,鏈接https://www.kernel.org/
例如通過git
獲取最新穩定版內核:
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
置換內核配置文件:
$ cp /boot/config-`uname -r` <內核源碼根目錄>
更新內核配置:
$ cd <內核源碼更目錄>
$ make menuconfig
編譯內核:
$ cd <內核源碼根目錄>
$ make -j4 # 完整編譯,也可用 make modules 編譯內核模塊
安裝內核模塊:
$ sudo make modules_install
安裝內核:
$ sudo make install
搞定重啟。
卸載Ubuntu官方釋放版本
獲取所有安裝的內核版本
$ dpkg --get-selections | grep linux
選擇要卸載的版本,卸載下列安裝包
$ sudo apt remove linux-image-<版本>-generic
$ sudo apt remove linux-headers-<版本>
$ sudo apt remove linux-headers-<版本>-generic
$ sudo apt remove linux-modules-<版本>-generic
卸載源碼版本
刪除下面的文件和文件夾
$ rm -rf /boot/vmlinuz-<內核版本>-*
$ rm -rf /boot/initrd-<內核版本>-*
$ rm -rf /boot/System-map-<內核版本>-*
$ rm -rf /boot/config-<內核版本>
$ rm -rf /lib/modules/<內核版本>-*
更新啟動引導
$ sudo update-grub