KIWI 需要使用影像描述來建立影像類型。影像描述為至少包含一個 config.xml 檔案或包含副檔名為 *.kiwi 之檔案的目錄。
下表包含了其他選擇性資訊。但是,若要在更高版本的作業系統中運作,您必須提供其中的大部分資訊︰
表格 17.1. 影像描述的其他檔案與目錄
|
檔案/目錄 |
描述 |
|---|---|
|
|
選擇性子目錄。包含所有影像套件安裝後所執行的 Bash 程序檔。 |
|
|
建立實體擴充時的選擇性組態程序檔 |
|
|
每個影像描述的組態檔案,節 17.3.2 中做了說明 |
|
|
僅用於 ISO 影像的歸檔 |
|
|
操作 |
|
|
AutoYaST 建立的組態檔案 |
|
|
用於控制 YaST 首次開機服務的組態檔案 |
|
|
建立準備步驟時的選擇性組態程序檔 |
|
|
包含所有影像套件安裝後有變更的其他目錄、特殊檔案及程序檔。 |
有關影像描述的所有資訊都儲存於中央組態 XML 檔案 config.xml 中。KIWI 每次執行時都會根據 RELAX NG 綱要來驗證 config.xml (有關此綱要語言的詳細資訊,請參閱 http://www.relaxng.org)。因此,建議使用支援 RELAX NG 功能的適用 XML 編輯器或使用 HTML 檔案 /usr/share/doc/packages/kiwi/schema/kiwi.xsd.html 中關於綱要的文件。
組態檔案由以下幾部分組成︰
一些關於原著者的描述、聯絡人資訊及簡要說明。
邏輯擴充階段所需的優先設定選項。
有關使用者及其名稱、主目錄和密碼的資訊。
指向儲存庫的連結。
用於所定義影像類型的套件清單。
以及其他不太重要的資訊,您可在上文中 RELAX NG 綱要文件的 HTML 檔案中進行檢視。
以下範例顯示了檔案的基本架構︰
範例 17.1. KIWI 組態檔案
<image schemeversion="2.0" name="..."><description type="system">
<author>...</author> <contact>...</contact> <specification>...</specification> </description> <preferences>
<type primary="true" boot="..." flags="...">iso</type> <type boot="..." filesystem="ext3" format="vmdk">vmx</type> <type boot="..." filesystem="ext3">xen</type> <type boot="..." filesystem="squashfs" flags="unified">oem</type> <version>2.7.0</version> <size unit="M">780</size> <packagemanager>zypper</packagemanager> <rpm-check-signatures>False</rpm-check-signatures> <rpm-force>False</rpm-force> <locale>en_US.UTF-8</locale> <oem-swap>no</oem-swap> <oem-boot-title>USB</oem-boot-title> </preferences> <users group="users">
<user name="root" pwd="" home="/root"/> </users> <repository type="rpm-md">
<source path="/home/rpmdir"/> </repository> <packages type="image" patternPackageType="onlyRequired">
<package name="yast2-live-installer"/> <package name="pam"/> <!-- List of packages reduced --> </packages>
每個 KIWI 組態檔案的根元素。每個檔案都需要版本號碼。選擇性的 | |
包含必要的描述,其中包括有關此影像描述的建立者、聯絡人地址及一些簡要說明。 | |
包含必要的優先設定,其中包括有關此影像的版本、使用的套件管理員、支援的影像類型及其他設定。 | |
選擇性的 | |
包含套件管理員所使用的必要儲存庫清單。 | |
包含影像中所包含的必要套件清單。 |
上文的 HTML 頁面中顯示了組態檔案的更多詳細資料。