《Linux From Scratch》第一部分:介紹 第一章:介紹-1.1 如何構建LFS係統
LFS 係統需要在一個已經安裝好的 Linux 發行版(比如 Debian、OpenMandriva、Fedora 或 OpenSUSE)中構建。這個已有的 Linux 係統(即宿主)作為構建新係統的起始點,提供了必要的程序,包括一個編譯器、鏈接器和 shell。請在安裝發行版的過程中選擇 “development(開發)”選項以便使用這些開發工具。
除了將一個獨立發行版安裝到你的電腦上之外,你也可以使用商業發行版的 LiveCD。
本書的第二章描述了如何創建一個的新 Linux 本地分區和文件係統,這就是編譯和安裝新的 LFS 係統的地方。第三章介紹了構建 LFS 係統所需下載的軟件包和補丁,以及如何把它們保存在新的文件係統裏。 第四章討論了如何設置恰當的工作環境。因為它闡述了幾個需要注意的重要問題,在你按照第五章及之後的內容開始工作前,請仔細閱讀第四章。
第五章闡述了構成基本開發套件(即工具鏈)的大量軟件包的安裝,在第六章中將用這個開發套件構建真正的係統。其中一些包是需要解決循環依賴——比如,你需要一個編譯器來編譯一個編譯器。
第五章還將向你展示如何構建第一遍的工具鏈,包括 Binutils 和 GCC (第一遍基本上就是重新安裝這兩個核心軟件包)。下一步是構建 Glibc,即 C 語言庫。Glibc 將用第一遍構建的工具鏈編譯。然後,第二遍的工具鏈就被編譯好了。這次,工具鏈將被動態鏈接到新建成的 Glibc。 第五章中剩餘的包將用這個第二遍的工具鏈編譯。當這些工作完成以後,LFS 的安裝過程就不會再依賴於宿主發行版了,除了正在運行的內核。
把新係統從宿主發行版中分離出來的工作看起來可能有點多餘。5.2 “工具鏈技術備注”這一節給出了為什麼要這麼做的完整技術說明。
在第六章,會構建完整的 LFS 係統。我們將使用 chroot (change root 改變根目錄) 程序來進入一個虛擬環境並啟動一個新的 shell,這個 shell 的根目錄將被指向到 LFS 分區。這個過程非常像是重啟並讓內核把 LFS 分區掛載為根分區。係統並沒有真正的重啟,而是在使用 chroot 實現的,因為創建一個可啟動的係統還需要有一些目前尚未完成的額外工作。 使用 “chroot” 的最大好處是,它在運行過程中允許你在構建 LFS 的同時繼續使用宿主係統。在等待包的編譯過程中,你可以繼續正常使用你的電腦。
為了完成安裝,還需要第七章中的基本的係統配置方法, 第八章中的內核和啟動引導程序的配置方法。 第九章包含了學完本書以後繼續使用 LFS 的一些建議。在本書內的步驟完成之後,電腦就可以重啟進入新的 LFS 係統了。
流程大概就是這樣。每一步的詳細信息都會在之後的章節和軟件包的描述裏討論。當你踏上這段 LFS 之旅,就會理清這些看起來很複雜的東西,每一個都將對號入座。
創建者:Gerard Beekmans
編輯者:Matthew Burgess 和 Armin K.
翻譯團隊:LCTT
譯者/校對:H-mudcup,wxy
最後更新:2017-11-07 14:04:14