linux如何編譯內核

angryTom
發布: 2019-11-06 10:58:40
原創
3576 人瀏覽過

linux如何編譯內核

linux如何編譯核心

#下載核心

我們要做的第一件事是下載核心原始碼。在 Kernel.org 找到你要下載的所需核心的 URL。找到URL 之後,使用以下指令(我以 4.17 RC2 核心為例) 來下載原始碼檔:

wget https://git.kernel.org/torvalds/t/linux-4.17-rc2.tar.gz
登入後複製

安裝所需的環境

#為了編譯內核,我們首先得安裝一些需要的環境。這可以透過一個命令來完成

sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison
登入後複製

務必注意:你將需要至少 128GB 的本地可用磁碟空間來完成核心的編譯過程。因此你必須確保有足夠的空間。

解壓縮原始碼

在新下載的核心所在的資料夾下,使用該指令來解壓縮核心:

tar xvzf linux-4.17-rc2.tar.gz
登入後複製

使用指令cd linux-4.17-rc2進入新產生的資料夾。

配置核心

在正式編譯核心之前,我們首先必須配置需要包含哪些模組。實際上,有一些非常簡單的方式來配置。使用一個命令,你能拷貝目前核心的設定文件,然後使用可靠的 menuconfig 命令來做任何必要的更改。使用以下命令來完成:

cp /boot/config-$(uname -r) .config
登入後複製

現在你有一個設定檔了,輸入指令make menuconfig。這個指令將會開啟一個設定工具,它可以讓你遍歷每個可用模組,然後啟用或停用你需要或不需要的模組。

很有可能你會停用掉核心中的一個重要部分,所以在 menuconfig 期間小心地一步步進行。如果你對某個選項不確定,不要去管它。或者更好的方法是使用我們拷貝的當前運行的內核的配置文件(因為我們知道它可以工作)。一旦你已經遍歷了整個配置清單(它非常長),你就準備好開始編譯了。

編譯和安裝

現在是時候去實際地編譯核心了。第一步是使用 make 指令去編譯。呼叫 make 指令然後回答必要的問題。這些問題取決於你將升級的現有核心以及升級後的核心。

回答了長篇累牘的問題之後,你就可以用如下的指令安裝那些先前啟用的模組:

make modules_install
登入後複製

這個指令將會耗費一些時間。

現在我們使用這個指令來安裝核心:

sudo make install
登入後複製

又一次,另一個將要耗費大量可觀時間的指令。事實上,make install 指令將比 make modules_install 指令花費更多的時間。

啟用核心作為開機

一旦 make install 指令完成了,就是時候啟用核心作為開機。使用這個指令來實現:

sudo update-initramfs -c -k 4.17-rc2
登入後複製

當然,你需要將上述核心版本號替換成你編譯完的。當指令執行完畢後,使用以下指令來更新 grub:

sudo update-grub
登入後複製

現在你可以重新啟動系統並且選擇新安裝的核心了。

推薦:linux使用教學

以上是linux如何編譯內核的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!