從 Linux From Scratch 開始創(chuàng)建你自己的操作系統(tǒng)
有無數(shù)不同的 Linux 發(fā)行版可用。他們中的許多人試圖滿足你的確切需求和風(fēng)格。不過不是每個人都知道這一點,你也可以從頭開始創(chuàng)建自己的基于 Linux 的操作系統(tǒng)。以下就向你介紹是如何開始的。但也許你并不想花時間去檢查和測試每一個發(fā)行版本,特別是當(dāng)它們已經(jīng)超過 1000 個發(fā)行版的時候。要找到天作之合,這可能是一種耗時的方式,而且沒有保證。還有什么比自己制作操作系統(tǒng)更能讓你知道自己擁有了完美的匹配產(chǎn)品呢?這就是 Linux From Scratch 的用武之地。
什么是 Linux From Scratch?
Linux From Scratch (LFS) [1]項目專為使你能夠創(chuàng)建自己的 Linux 操作系統(tǒng)來滿足你的需求而創(chuàng)建,無論是用于特殊硬件調(diào)整、最大化性能、保持最前沿,還是學(xué)習(xí) Linux 的內(nèi)部結(jié)構(gòu)。Linux From Scratch 不僅僅是另一個帶有最少必要工具的發(fā)行版。LFS 實際上只是一個文檔的集合,所以你所做的一切都來自每個項目的源代碼。換句話說,借助 LFS 文檔,你可以直接從他們的站點下載 Linux 內(nèi)核的源代碼并進(jìn)行編譯。然后你繼續(xù)下一個組件并從那里開始工作,直到你最終構(gòu)建了一個完整的操作系統(tǒng),或者至少構(gòu)建了一個你需要的操作系統(tǒng)。
如何制作自己的 Linux 操作系統(tǒng)
在創(chuàng)建自己的 Linux 操作系統(tǒng)時,你需要了解必須使用 Linux 發(fā)行版來創(chuàng)建另一個發(fā)行版。這是因為,當(dāng)你直接從源代碼創(chuàng)建所有內(nèi)容時,你將需要大多數(shù) Linux 發(fā)行版提供的通用工具來編譯和安裝 LFS 系統(tǒng)。也就是說,你不必安裝臨時發(fā)行版。你可以從 U 盤啟動 Linux,然后用它來做你需要做的所有事情。準(zhǔn)備就緒后,請打開最新的 Linux From Scratch 文檔[2]以獲取有關(guān)如何開始的指導(dǎo)。該文檔將包含有關(guān)如何完成所需步驟的鏈接和詳細(xì)信息,本文不會完整介紹這些內(nèi)容。
第 1 步:分區(qū)磁盤
打開文檔后真正的第一步是創(chuàng)建一個新分區(qū),你將在其中安裝新的 LFS 操作系統(tǒng)。你可以堅持你通常做的事情,無論是將所有內(nèi)容存儲在單個分區(qū)上,分離根分區(qū)和主分區(qū),還是加密你的磁盤。
歡迎你使用你最喜歡的分區(qū)工具(例如 GParted)創(chuàng)建這些分區(qū)。如果你使用的是標(biāo)準(zhǔn)版本的 Ubuntu 或 Fedora,那么你很有可能已經(jīng)安裝了 GNOME 磁盤。或者,你可以選擇使用命令行工具,例如 fdisk,無論你選擇何種發(fā)行版,該工具都可用。你可以選擇在現(xiàn)有操作系統(tǒng)的基礎(chǔ)上再創(chuàng)建一個系統(tǒng),但要知道雙引導(dǎo)會帶來風(fēng)險。Linux From Scratch 已經(jīng)夠復(fù)雜了。你可能不想為增加的復(fù)雜性而煩惱。
第 2 步:編譯和安裝你的基本系統(tǒng)
?
準(zhǔn)備好分區(qū)后,你需要前往第 3 章下載所有必要軟件包和補丁的源代碼。然后,在進(jìn)行文檔第 4 章中定義的更多更改后,你將開始構(gòu)建 LFS 系統(tǒng)的基本框架。按照指南,你將編譯構(gòu)成工具鏈的工具,然后你將使用這些工具來構(gòu)建其余的基礎(chǔ)知識。請注意,Linux From Scratch 有一個不同于標(biāo)準(zhǔn)發(fā)行版的“要素”概念,標(biāo)準(zhǔn)發(fā)行版附帶許多后臺服務(wù),例如打印、音頻服務(wù)器和防火墻。你可以隨意安裝盡可能多的東西,但那是以后的事了。你的基本系統(tǒng)是你創(chuàng)建可獨立運行的可引導(dǎo)系統(tǒng)所需要的,而無需繼續(xù)從單獨的發(fā)行版繼續(xù)工作。完成基礎(chǔ)編譯后,你將“chroot”進(jìn)入新系統(tǒng)。這相當(dāng)于重新啟動到你的新操作系統(tǒng),除非你不是從字面上重新啟動,并且更改僅適用于你的終端窗口。此時,你可以開始編譯構(gòu)成新操作系統(tǒng)的所有其他內(nèi)容。
第 3 步:安裝你的桌面、應(yīng)用程序和所有其他設(shè)備
一旦你進(jìn)行了簡單的配置,你就可以開始安裝其他軟件,使你的系統(tǒng)真正屬于你。你應(yīng)該安裝哪些其他軟件完全取決于你、你的需要和你的需要。請記住,沒有包管理器。要安裝任何東西,你需要知道如何從源代碼編譯和構(gòu)建軟件。這就是為什么 LFS 經(jīng)常被描述為精通 Gentoo 的人的下一個級別的原因之一。如果構(gòu)建這么多的軟件是令人不快的,你可能想還不如嘗試一下 Arch Linux。至于安裝哪個軟件,你有完全的自由。如果你想繼續(xù)本著從零開始盡可能多構(gòu)建的精神,你可以決定構(gòu)建自己的桌面環(huán)境,但是沒有什么可以阻止你選擇許多預(yù)先存在的選項之一。無論哪種方式,你都可以從最好的 Linux 應(yīng)用程序中進(jìn)行選擇。如果你已經(jīng)做到了這一點,那么你很可能知道你希望建立什么樣的系統(tǒng)。玩得開心把電腦變成你自己的。
從 Linux From Scratch 值得嗎?
創(chuàng)建 LFS 操作系統(tǒng)肯定需要一些時間,因為編譯軟件不是一個快速的過程。沒有嘗試過 Linux 或?qū)K端不滿意的人可能希望在深入研究之前從其他地方開始。如果無論如何都想從 Linux From Scratch 開始試驗,你可以在安全、隔離的位置(例如虛擬機或空間機器Space Machine)進(jìn)行嘗試,這樣你就不會意外破壞有價值的數(shù)據(jù)。然后,無論如何,學(xué)習(xí)。有很多寶貴的知識,只有親身實踐才能獲得。