comps.xml文件定制
参考:http://www.ibm.com/developerworks/cn/linux/l-custm/ 节选内容如下: 4.1 编辑comps.xml文件在生成安装盘之前,需要注意对comps.xml文件进行修改。这个文件用来告知安装程序anaconda,用户选择了某个组是应该有哪些包需要安装,定义了在安装过程中,包是如何被捆绑在一起的。在Red Hat 8.0以前版本的发布盘中,对应的文件为comps,它只是一个简单的文本文件,在Red Hat 8.0之后的版本中,用comps.xml代替了原来的comps文件。comps.xml是一个XML文件,易于对内容进行分析和说明。 comps.xml文件开始是说明xml的版本和DTD断言,然后进入以<comps>标记开始的文件的主体内容。如: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE comps PUBLIC "-//Red Hat,Inc.//DTD Comps info//EN" "comps.dtd"> <comps> comps.xml主要由三部分组成,首先是组列表,它描述了在安装过程中需要的不同的组(或组件),包括组名、组的描述和包含的RPM包;其次是组的层次结构,它将组分成不同的类,并定义了组的一个顺序,从而可以决定哪些组需要先安装;最后为一系列RPM包以及它们之间的依赖关系。 下面分别介绍comps.xml文件的这三部分: (1) 组列表 在系统安装时,需要用到一个组中的一些属性,下面就是属性列表以及它们如何使用。一个组被定义在<group>和</group>标记之内. 一个简单的组定义可以是: <group> <id>somegroup</id> <name>Sample Group</name> <default>true</default> <uservisible>false</uservisible> <description>This is a silly sample group</description> <packagelist> <packagereq type="mandatory">bash</packagereq> <packagereq type="default">cpio</packagereq> </packagelist> </group> 下面分别说明组定义中一些参数的含义:
(2)组层次结构 它描述了组的树状层次结构,组层次结构定义在<grouphierarchy>和</grouphierarchy>标记之间,由定义的<category>标记组成类。 一个简单的组层次结构可以如下所述: <grouphierarchy> <category> <name>Random Groups</name> <subcategories> <subcategory>somegroup</subcategory> </subcategories> </category> </grouphierarchy> 一个类由下面这些属性组成:
(3)RPM包 此部分说明要安装的RPM包,它定义在<package>和</package>标记之内。一个简单的RPM包部分可以如: <package> <name>bash</name> <dependencylist> <dependency>mktemp</dependency> <dependency>bash</dependency> <dependency>glibc</dependency> <dependency>libtermcap</dependency> </dependencylist> </package>
4.2 产生完整的comps.xml文件上述说明的comps.xml文件中的RPM包部分是是自动产生的,为了形成完全的comps.xml文件,需要在系统中安装comps-extras RPM包,然后进行下面的操作:
通过新增你的包到comps.xml文件,你可以根据你的需要做你自己的发布盘,确信你的包在缺省情况下会被安装。需要注意的一件事是你更新的包与其它包的依赖关系,这是你需要处理的,要注意你更新的包所应该放置的位置。另外,不要在文件中随意增加或删除其余的空格。在修改comps.xml之前,也最好对最初的comps.xml做个备份,以备恢复使用。 ?? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |