成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

構建自己Linux發行版的方法

運維 系統運維
要是每次你安裝一個新的Linux刊行版時都要做一些相同的設置,那么你應該創建一個本身的定制版Linux。下文教大家如何構建自己的Linux發行版,具體內容如下所述。

要是每次你安裝一個新的Linux刊行版時都要做一些相同的設置,那么你應該創建一個本身的定制版Linux。下文教大家如何構建自己的Linux發行版,具體內容如下所述。

Linux From Scratch(LFS)及其后代代表一種新方法,向用戶揭示Linux操作系統是如何工作的。LFS基于這樣的假設,即一部分一部分地編譯完整的操作系統不僅能夠揭示操作系統是如何工作的,也允許獨立的操作人員為速度、內存占用或安全性而構建系統。

許多作家已經編寫了有關UNIX風格的書籍,深入研究了調度、內存管理、多進程和線程、文件系統,以及用戶與內核之間的交互。寫作Linux書籍的作家相對于UNIX作家來說有一個優勢:盡管團體發生了劇變,但是Linux內核不可能分成幾個相互競爭的分支,由于GNUPublicLicense(GPL)、集中式研究實驗室OpenSourceDevelopmentLab(OSDL)和LinusTorvalds不可動搖的地位,使得Linux有幸成為一個緩慢移動的目標(slow-movingtarget)。

為什么UNIX內核很重要

除了某些方面具有一定的相似性之外,不同的Unix內核并不怎么相同。各種UNIX風格也具有一個Linux所缺少的優點:所有UNIX風格都被假定是完全的操作系統。Linux通常被描述為“只是一個內核”(如果有這樣的定義的話,也是一個武斷的定義),它給出公共功能和實現的核心,不管內核是運行在不太強大的Pentium?II機器上還是SymmetricMultiprocessing(SMP)系統上,這些公共功能和實現都不會發生本質上的改變。為了更加簡化,有人可能會說,離Linux內核越遠,就會發現更多的變化,而UNIX系統則趨向于是各種UNIX/POSIX標準的離散實現。

事情并沒有這么簡單。檢測Linux內核和系統級代碼可能是一件很費時間的事情,并且在現實世界中會限制使用。LFS項目旨在解決Linux上有限的系統級可理解性問題。關于內核需要大量的庫和工具來讓Linux系統執行最基本的任務這一事實,已經做過討論了,但是如果一個比較熟練的用戶具有一個slim-lineLinux發行版,他不想下載幾吉字節不讓他優化系統、也不讓他拋開所有這些麻煩且不必要的工具的二進制代碼,那該怎么辦?如果一個非常熟練的用戶拒絕接受各種社團發行版的苛刻條件(diktat),而想要運行一個來自CD的Linux/Apache/MySQL/PHP(LAMP)類型的應用程序堆棧,那該怎么辦?LFS可以解決這些問題。

LinuxFromScratch

LFS項目顯然建立于那些對于構成基本的Linux系統來說充分而不必要的源文件的基礎之上。它已經超越了Linux內核和設備驅動程序,因為要產生一個可工作的Linux系統,您必須添加一個完整的編譯器工具鏈、許多Linux匯編程序實用工具、glibc系統庫、系統配置工具和連接到userlandshell訪問的工具。LFS建立在這樣一個假設的基礎之上,即Linux或UNIX允許具有一些腳本編寫知識的用戶,了解一個完全有用的系統的工作方式,而不用深入研究內核代碼本身。

為了了解Linux系統的工作方式,LFS的創建者們確定,通過遵循模塊依賴性來編譯系統,可能是了解一般操作系統和特定的Linux的機制最自然的方式。用戶掌握了編譯過程之后,就可以開始消除依賴性樹的那些連接到與支持操作系統基本目的無關的系統組件的部件。例如,在編譯完成之后,消除編譯器工具鏈本身是可行的。在沒有全套的命令行實用工具時,可以湊合使用嵌入式LAMP堆棧。配置實用工具也可以被丟棄,大多數用戶可以湊合著用一個而不是太多Linux將會支持的文件系統。

Linux部件

LFS系統的一個重要部件是,可以作為tarball得到的大量源文件。文檔是另一個重要部件,并且是最重要的。實際上,很有可能利用一個最新的LFS書籍文件并創建一個LFS發行版,因為LFS書籍中詳細描述了每個下載位置和每個源文件及其依賴性的特征。用于從內核到編譯器到shell編譯每組源文件的過程都是已經寫好了的,如果可能,您也可以在描述具有不同特征的系統的LFS書籍中找到替代的例程。LFS系統的另一個不太可能出現在一般用戶工具箱中的部件是,在基本LFS系統組合在一起之后引導系統所需的引導腳本。

現在對LFS發行版的最大警告是:勇敢的發行版構建者所需的是一個可工作的Linux發行版,包括一個完整的編譯器工具鏈和一套文件系統創建實用工具。自然,所有基于源代碼的Linux發行版都需要使用各個發行版都完全不同的特定編譯器版本來引導。LFS不是該領域的惟一系統,但它是惟一允許您直接處理單個源文件的系統。大多數其他基于源代碼的Linux系統,比如Sourcemage和MyGeOS,提供一個完整的下載,建議用戶使用。LFS不作這樣的假設,并且鼓勵拆開LFS框架。

預先假設起作用的Linux發行版已安裝在非外來的(nonexotic)硬件上,即使LFS可能沒有配置工具和腳本那么受關注。要編譯LFS,您需要準備一個分區和一個文件系統,還需要編譯一個編譯器和系統庫。如果用手工完成的話,這是一個相當傷腦筋的過程,但是也的確可以增加您在處理其余安裝方面的自信。整個系統的編譯要花一小時到四天的時間,具體時間取決于底層硬件的年代和您的命令行技術熟練程度。

作一個相當大的假設,如果您愿意很大程度上保留書籍安裝,并使對LFS書籍中提議的安裝的更改保持最小,您也可以使用自動化的安裝例程來安裝基于LFS的發行版。安裝例程沒有在LFS書籍中給出,但是可以在名稱AutomatedLinuxfromScratch(ALFS)之下作為基于XML的發行版得到。活動安裝可以作為基于C的腳本得到,該腳本使用ncurses來模擬圖形安裝。該安裝也叫做nALFS并給出一個極為靈活的包安裝框架。工作需要一個起作用的Linux系統,并帶有可以工作的C編譯器和XML解析器。一個可以工作的LFS系統就足夠了。

AutomatedLinuxFromScratch

ALFS的目的是超越LFS本身。LFS自己指導基于Linux的操作系統的內部工作,但是它不具有單個圖形用戶界面(GUI)。LFS既不允許連接到網絡,也不允許連接到Internet。ALFS可以簡化系統的擴展,例如,通過添加支持Internet訪問的庫,或者通過安裝圖形桌面所需的X庫。

超越LFS

LFS的創建者們認識到了對其他各種基于源代碼的Linux系統的需求。為了這些想要超越LFS并添加XWindowSystem、GNOME和網絡支持的人,創建了另一個LFS派生物:BeyondLinuxFromScratch(BLFS)。第三版LFS書籍(讓我們不會忘記是在談論書籍而非發行版),形成一個以一個角為基礎的三角形:對于自動化編譯和完全的基于源代碼的Linux發行版,基本的LFS版本是基礎。BLFS將基本的Linux系統轉化成一個完全的用戶廣泛接受的Linux系統。AFLS簡化基于源代碼的Linux安裝的安裝和擴展。整個基于源代碼的系統的編譯是由一個腳本指導的,您在針對運行腳本的硬件調整腳本之后,就可以讓腳本自己運行了。在您(或安裝工程師)確定需要運行哪些包,也即特定的辦公應用程序套件之后,您就可以容易地擴展安裝順序了。ALFS也遲早會派上用場,因為它適用于從源代碼進行網絡范圍的安裝。

HardenedLFS

LFS家族的最后一個成員解決基于源代碼的Linux的一個特別重要的方面:安全性。對于不想依賴于所選的Linux發行版服務器交付的補丁的那些人,安全性的普通方法是,針對所選的核心庫和應用程序跟蹤安全報告。對于LFS實現人員來說,問題有些不同:盡管不是不可能,但是也難以審計Linux內核代碼,也許還包括集中于基于Linux的操作系統的內部機能的很多庫和實用工具。

代碼審計相當費時,并且只有當補丁服務器是由專門人員集中維護的時,添加大量補丁才是明智的。但是可以取代一些為反映安全問題的新方法而重新編寫過的庫。一個好的例子是,通過從一個適當大的隨機數池中隨機分配數字,使得猜測進程標識符極為困難。OpenBSD項目最先采用了該方法,隨后,各種UNIX風格和Linux發行版都采用了該方法。

一個相當新的項目叫做HardenedLinuxFromScratch(HLFS),在Linux下采用了這一安全方法。該項目假設相當正規地掌握了LFS和BLFS的一些部件,并使用了不會成為大多數Linux系統中的標準的幾個實用工具和庫。

添加到HLFS中的最重要的部件可能是Stack-SmashingProtector(SSP),通過使用gcc指令可以啟用該功能。SSP開發來防御stack-smashing攻擊,這類攻擊屬于影響Linux系統的一類最常見的安全威脅。其他安全措施包括一流的隨機數生成器和位置獨立的可執行程序的編譯,其中通常轉化成靜態鏈接對象代碼的可執行代碼作為共享庫出現,而位置獨立的可執行庫通過將地址隨機化可以隱藏這些地址。當然,可從HLFSWeb站點得到大量補丁,并可查看其源代碼。

日益壯大的LFS家族

在許多方面,Linux版本的LFS家族是一個方法,給予黑客以構造基于Linux的操作系統的能力。但是對于LFS的創建者們來說,最重要的結果似乎是:通過LFS,所有Linux發行版對于所涉及的用戶都成了智能的了。通過允許用戶一部分一部分地構建Linux發行版,并幫助用戶將一個基于Linux的操作系統看作一個由許多部件組成的系統,還可以用另外的方法構建Linux發行版。

更一般來說,用戶要更改構建Linux發行版的方式,不必要是程序員:只要從構建LFS系統學到的一點腳本編寫能力就足夠了。LFS專家可以改變和擴展Linux發行版的完美組合,而不會影響它的基本結構。對于有人員和專家維護Linux系統,但沒有資金從咨詢機構和公司購買商業支持的機構來說,該功能特別重要。已經針對教學目的和大型網絡,演示了基于LFS的Linux系統。它們也有可能用于其他領域。

總結:

希望本文介紹的構建自己Linux發行版的方法能夠對讀者有所幫助,更多有關linux系統的知識還有待于讀者去探索和學習。

責任編輯:韓亞珊 來源: linux時代
相關推薦

2016-09-18 10:08:38

Linux發行版SUSE Studio

2009-12-21 16:27:55

2011-04-26 15:18:23

CentOS發行版

2016-09-27 09:45:27

Linux發行版構建

2010-07-12 10:48:36

2018-04-17 10:00:18

Linux發行版面向企業

2009-10-13 09:22:01

Linux發行版

2010-10-14 14:31:31

Ubuntu發行版

2021-09-06 11:29:59

LinuxCutefishOS操作系統

2009-12-01 16:55:40

Live Linux

2013-09-04 13:27:05

Linux發行版

2022-11-14 10:49:33

Linux發行版

2015-07-13 13:08:24

LFSLinux

2011-02-16 16:23:09

Debian發行版

2013-11-11 11:34:56

UbuntuLinux發行版Unity

2020-06-30 09:38:14

Linux發行版操作系統

2009-02-09 10:56:50

Linux發行版

2009-05-26 12:13:05

Linux發行版Puppy Linux

2010-02-06 14:58:35

2013-11-11 11:12:25

Linux發行Slackware
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 老司机精品福利视频 | 国产视频1 | 日韩精品在线播放 | 国产福利资源在线 | 红色av社区 | 一呦二呦三呦国产精品 | 日本精品视频一区二区三区四区 | 男人的天堂在线视频 | 伊大人久久 | 免费大黄视频 | 欧美一级电影免费观看 | 国产在线精品一区二区 | 国产精品一区二区av | 91久久综合 | 日本精品视频在线观看 | 综合一区二区三区 | 欧美成人精品激情在线观看 | 亚洲一区二区精品视频在线观看 | 国产精品视频 | 玩丰满女领导对白露脸hd | 在线看片福利 | 国产一区二区三区不卡av | 涩色视频在线观看 | 男女啪啪高潮无遮挡免费动态 | 国产xxxx搡xxxxx搡麻豆 | 成人在线视频免费播放 | 美国一级毛片a | 欧美一级片在线观看 | 91久久精品国产91久久 | 亚洲 中文 欧美 日韩 在线观看 | 激情欧美日韩一区二区 | 人人色视频 | 日韩激情免费 | 在线色网| 综合久久综合久久 | 欧美a在线观看 | 九九热在线视频 | 久久久久久网站 | 国产精品一区二区日韩 | 激情久久网 | 亚洲v日韩v综合v精品v |