ubuntu編譯內核並更換

1 下載內核
https://www.kernel.org/ 隨便找一個內核下載,筆者以最新的linux-5.4.7 爲例子

tar xvf linux-5.4.7.tar.xz
cd linux-5.4.7
cp /boot/config-3.13.0-32-generic .config
yes “” | make oldconfig
make modules
sudo make modules_install
make -j16
sudo make install
cd /boot
sudo mkinitramfs -ko initrd.img-5.4.7 5.4.7
sudo update-grub
sudo reboot

整體命令就是這麼簡單, 具體來解釋下

cp /boot/config-3.13.0-32-generic .config
yes “” | make oldconfig

我們都知道在編譯內核前要對內核做一些裁剪. 保留我們需要的內核特性,刪除不必要的特性, 一般使用make menuconfig來配置, 這個過程是比較繁瑣的,並且需要對內核非常瞭解才能完成的. linux發行版爲了方便用戶瞭解當前使用的內核配置, 會將當時他們編譯內核的配置選項放在/boot目錄, 比如config-3.13.0-32-generic 就是當時他們使用的編譯選項(3.13.0-32版本內核). 我們只需要把它改成.config文件放在linux內核源碼根目錄, 並執行make oldconfig命令,就可以使用當前內核的編譯選項來編譯新內核了. 但是新內核一般會有一些新的編譯配置, 我們執行make oldconfig來設置編譯選項的時候就會針對這些新的編譯配置來問我們我不要使用這個新特性, 使用yes ""命令來回答它使用默認選項.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章