如何在Debian或Ubuntu上安裝完整的Linux核心原始碼

Linux中國發表於2015-03-14

如果我需要為我的Debian或Ubuntu下載並安裝完整樹結構的核心原始碼以供編譯一個定製的核心。那麼在Debian或Ubuntu上有什麼可行的方法來下載完整的核心原始碼呢?

在給你的Linux安裝完整核心原始碼之前,先問問自己是否真的需要這樣做。如果你僅僅是嘗試去編譯一個核心模組或是為核心定製驅動,你並不需要完整的核心原始碼樹。你只需要安裝一些與核心對應的標頭檔案,這樣就足夠了。

只有在你需要生成一個定製的核心,而且核心原始碼中的一些核心預設設定要被你調整了的情況下,你才需要完整的核心原始碼樹。

這裡將會解答如何在Debian或Ubuntu的庫中下載並安裝完整樹結構的核心原始碼。你可以在https://www.kernel.org/pub/linux/kernel/下載官方的核心原始碼,不過使用發行版軟體倉庫可以允許你下載包含補丁的核心原始碼。

在Debian上安裝完整的核心原始碼

在下載核心原始碼之前,先安裝dpkg-dev,其中包含你在Debian上生成原始碼時需要的開發工具套件。不僅如此,dpkg-dev中還包含在用來解壓Debian原始碼包並自動打補丁的工具dpgk-source。

$ sudo apt-get install dpkg-dev

然後,執行以下命令下載完整的核心原始碼。

$ apt-get source linux-image-$(uname -r)

伴隨著完整核心原始碼(linux_X.X.XX.orig.tar.xz)的還有一些可用的核心補丁(linux_X.X.X+XXX.debian.tar.xz)和原始碼控制檔案(linux_XXXX.dsc),這些都將被下載並儲存到當前目錄。在.dsc檔案中會指出如何給核心原始碼打補丁。

當下載完成,以上的命令將會自動呼叫工具dpkg-source將下載的核心原始碼解壓到當前的目錄中,與此同時根據.dsc檔案來下補丁。

最終完整的核心原始碼樹將會以”linux-X.X.XX”的形式呈現在當前目錄中。

在Ubuntu上安裝完整核心原始碼

如果你想安裝完整核心原始碼的話,以上在Debian上的那一套做法在Ubuntu上仍然奏效。

在Ubuntu上還有另一套方法安裝完整核心原始碼。事實上,你可以查一下由Canonical為Ubuntu不同發行版維護的核心原始碼樹。

$ sudo apt-get install git
$ git clone git://kernel.ubuntu.com/ubuntu/ubuntu-$(lsb_release --codename | cut -f2).git

舉個例子,如果你使用的是Ubuntu 14.04,以上的命令將會檢視Git的”ubuntu-trusty”倉庫中的程式碼。

一旦在你對Git倉庫的查詢結束後,使用以下的命令來安裝用來訪問生成核心原始碼樹所需依賴的重要開發包。

$ sudo apt-get build-dep linux-image-$(uname -r)

相關文章