操作系統環境 VMware workstation15 Pro ubuntu18.04 LTS 待編譯內核5.3.10版本 內核下載地址 kernel.org 環境配置 在正式編譯前需要安裝部分軟體。 sudo apt update && sudo apt upgrade sudo apt-get ...
-
VMware workstation15 Pro
-
ubuntu18.04 LTS
-
待編譯內核5.3.10版本
- Compiler: gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
內核下載地址
環境配置
在正式編譯前需要安裝部分軟體。
sudo apt update && sudo apt upgrade sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison
解壓縮
解壓縮剛剛下載好的內核壓縮包。
tar -zxf linux-5.3.10.tar.xz cd linux-5.3.10
配置內核
在正式編譯內核之前,我們首先必須配置需要包含哪些模塊。實際上,有一些非常簡單的方式來配置。使用一個命令,你能拷貝當前內核的配置文件,然後使用可靠的 menuconfig
命令來做任何必要的更改。
cp /boot/config-$(uname -r) .config
上述命令的意思就是拷貝對應當前內核配置到當前目錄下並重命名為.config
(文件名前加.
意思為隱藏文件)。
可以自行查看下uname -r
的輸出:
uname -r
之後執行命令:
make menuconfig
在虛擬機下有可能提示會因為屏幕太小而無法顯示menuconfig
而執行失敗。要確保虛擬機下的顯示面積足夠大。
顯示如下:
在這裡可以選擇啟用或者禁用一些模塊。如果你不知道該如何選擇的話,預設退出即可。
編譯和安裝
退出menuconfig
後,在命令行中輸入
make -j4
命令即可開始編譯。-j4
意思是併發執行,可以提高速度,一般情況 下不要多於CPU核數。這個命令的執行會耗費很長時間。
編譯完成之後首先安裝模塊,命令為:
sudo make modules_install
其次安裝內核,命令為:
sudo make install
啟用內核作為引導
輸入下列命令將內核作為引導,將數字更改為你自己編譯的版本號:
sudo update-initramfs -c -k 5.3.10
下麵更新一下grub:
sudo update-grub
之後重啟即可在啟動界面選擇需要啟動的內核。如果看不到啟動選擇界面,請執行以下操作:
輸入命令:
sudo vi /etc/default/grub
將文件修改為以下模式:(註釋掉hidden那一行,將timeout更改為較大值,這裡改為了10)
之後執行
sudo update-grub
重啟即可見到下麵菜單,選擇advanced,進入後選擇剛編譯安裝好的內核進入即可。
確認內核版本
說明內核安裝成功。
自定義grub啟動項
1. 修改啟動項名稱
在ubuntu下,可以直接修改/boot/grub/grub.cfg中有關啟動項的名稱。
2. 增加自定義啟動項
複製/boot/grub/grub.cfg有關啟動項的內容到
/etc/grub.d/40_custom進行自定義即可。
3. 執行update
最後都要執行下述命令以生效。
sudo update-grub
參考資料