Linux發行版製作過程中的各個步驟

來源:互聯網
上載者:User
Linux發行版製作過程中的各個步驟ZDNet軟體頻道 時間:2008-05-13 作者: | 中國IT實驗室 我要評論( )
本文關鍵詞:作業系統
安裝
技巧
Linux
製作Linux發布的目的是為了在系統中能夠快速,正確地建立Linux系統內容。製作Linux發布的主要工作是決定各種軟體的去留,因為有了RPM包對其提供優良的管理能力。

    1.項目整體分析

    製作Linux發布的目的是為了在系統中能夠快速,正確地建立Linux系統內容。製作Linux發布的主要工作是決定各種軟體的去留,因為有了RPM
(RedHat Package Manager)包對其提供優良的管理能力,所以以目前比較成熟的RedHat 7.1(Linux Kernel Version 2.4.2-12)Linux發布程式作為藍本,以RPM包作為基本的制定單元,以需求為原則對其進行取捨,得到適合實際需要的Linux系統。

    由此,項目自然而然的以分析RedHat
Linux的光碟片安裝系統為起點,在掌握了其結構和行為的基礎上,在包一級(結構部分)和代碼一級(行為部分)進行修改,同時建立相應的測試環境,以便對修改進行及時的規範。

    2.項目分步驟實施細節

    2.1對Linux光碟片安裝系統的分析

    結構部分

    在安裝光碟片中,主要的目錄結構和檔案大致如下:

    images/ 此目錄下包含了製作啟動盤的映像檔案(檔案尾碼img),其中boot.img是當安裝介質為CD-ROM時負責引導系統的映像檔案,bootnet.img是當安裝介質為FTP、NFS等時負責引導系統的映像檔案。

    driver.img是由一些特殊裝置驅動程式模組組成的映像檔案,在當前核心不支援這些裝置的情況下,提供了對它們進行訪問的一種方法。其中,boot.img映像檔案中主要包含以下檔案:

    其中,initrd.img為Linux ext2檔案系統,構成如下:

    可執行檔/sbin/loader的任務是判斷安裝介質的有效性,並從中執行安裝程式。其實正是boot.img,在系統啟動時被執行,經解析之後在記憶體建立起了Linux核心,並根據設定檔sysLinux.cfg裝載虛擬檔案系統,形成了完整的Linux
System,為後續的工作提供了必要的作業系統環境。

    Boot.img映像的檔案系統類型為msdos,而其中的initrd.img映像的檔案系統類型必為Linux系統自己的ext2,所以對於它們的解析操作是不同的。

    RedHat/ 此目錄是RedHat
Linux發布的核心目錄,主要的目錄結構都在這裡,其中RPMS/ 包含了RedHat
Linux發布的主要部分,即以RPM包的形式將Linux系統中的二進位可執行檔,設定檔,文檔等等組織在一起,形成能完成一定功能的比較獨立的軟體包(檔案尾碼rpm)。這個目錄就是把這些軟體包都集合在一起,形成了RedHat
Linux發布。

    base/包含了在安裝過程中要用到的描述組織圖和安裝行為的所有檔案,其中comps,hdlist和hdlist2是描述RPM包組織圖的檔案。

    comps此檔案把各個RPM包按一定的原則組織成若干組,即components,這樣在安裝過程中就不必對每一個包做出取捨,而以組為單位。comps檔案為簡單文字格式設定,它的結構如下所示:

    4 表示RPM包的版本號碼,當前為4

    1 base { }

    base是此component名,中是此component中所包含的RPM包的名稱列表,1表示在安裝中預設為選中,即預設安裝。

    0 –hide IDS sensor
    {
       snort
       libpcap
    }

    表示IDS sensor組中包含有snort和lipcap這兩個RPM包。0表示這個組在安裝中預設為不選中即預設不安裝,並且由—hide指出不在使用者介面上顯示此組。

    hdlist和hdlist2 這兩個檔案維護從RPM包名到真實包檔案名稱的映射過程,例如從snort這個RPM包名到真實包檔案名稱snort-1.8.1- 1.1.2.i386.rpm的映射。這兩個檔案是用特殊的程式產生的,無法用簡單的方法察看其中的內容和結構。

 如所示映像檔案中的主要部分是安裝程式anaconda,它的主執行體是/usr/bin下的anaconda,由其調用的大量常式分布在/usr/lib/anaconda下,而安裝過程中要用到的資源檔分布在/usr/share/anaconda下。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.