內核必須懂(三): 重編Ubuntu18.04LTS內核4.15.0

目錄

  • 前言
  • 編譯前準備
  • 編譯
  • 安裝
  • 重啓以後
  • 最後

前言

以前在寫系統調用的時候也說過, 可是當時理解有限, 寫的很差. 此次再從新編譯內核, 分享經驗.linux


編譯前準備

首先補包:vim

sudo apt-get install build-essential kernel-package libncurses5-dev libssl-dev
複製代碼

中途可能會看到如圖, 建議保持版本便可:bash

編譯前準備

打開grub文件, 因爲個人是單Ubuntu系統, 不是常見的Win+Ubuntu雙系統, 因此開機選擇系統的選項就默認隱藏了, 須要手動打開, 即註釋掉第7行:ui

sudo vim /etc/default/grub
複製代碼

啓動菜單

而後更新下grub:es5

sudo update-grub
複製代碼

而後下載源碼, 這裏推薦阿里的鏡像:spa

阿里鏡像

這裏我在Home下創建了目錄, 解壓源碼到下面:code

sudo tar -zxvf linux-4.15.tar.gz
複製代碼

源碼

而後拷貝配置文件, 其實這就是Ubuntu18.04.1LTS自帶的配置文件, 這麼作的好處就是穩, 若是你知道本身修改的內核配置是什麼, 也一樣能夠在這個原有編譯基礎上修改. 固然, 如今你應該在解壓的源碼下面:cdn

sudo cp /boot/config-4.15.0-46-generic .config
複製代碼

配置文件


編譯

若是你以前編譯過, 建議先sudo make mrproper進行清理, 尤爲是以前編譯失敗了. 而後就開始編譯, 至少兩個小時吧:blog

sudo make-kpkg clean
sudo make-kpkg --initrd kernel-headers kernel_image
複製代碼

安裝

而後你會發現上層目錄中多了兩個deb包, 安裝它們:ssl

sudo dpkg -i *.deb
reboot
複製代碼

編譯完成


重啓以後

重啓以後使用uname -r查看內核版本號, 發現已經改爲4.15.0:

內核號

以前默認內核如圖:

內核號

固然了, 不僅是內核號變了, 還多了些內容, 在/usr/src下面多了源碼文件夾和頭文件文件夾:

變化

build和source都指向源碼目錄, kernel裏面則是編譯好的模塊:

變化

/boot下一樣增長了自編譯內核的相關文件:

變化

最後看到/boot/grub/grub.cfg中多了自編譯內核的啓動信息:

變化


最後

內核篇章好久沒更新了, 重編內核是基礎. 喜歡記得點贊, 有意見或者建議評論區見哦~

相關文章
相關標籤/搜索