Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

27.3.2. 软件包选择

使用 %packages 命令启动一个 Kickstart 部分,该部分描述了要安装的软件包。
您可以根据 环境 或其软件包名称指定软件包。定义了包含相关软件包的几个环境和组。请参阅 Red Hat Enterprise Linuxnbsp 中的 repodata/*-comps-变体.xml 文件;Hat Enterprise Red Hat Enterprise Linuxnbsp;Linux 7 安装 DVD 查看一个环境和组列表。
*-comps-变体.architecture.xml 文件包含描述可用环境(使用 <environment> 标签标记)和组( <group> 标签)的结构。每个条目都有一个 ID、用户可见值、名称、描述和软件包列表。如果为安装选择了组,则始终安装在软件包列表中标有 填的软件包,如果在其他位置未特别排除,则标记为 默认的 软件包会安装,标记为 可选 的软件包必须专门包含在其他位置,即使选择了该组。
您可以使用其 ID(< id> 标签)或名称(<name&gt; 标签)指定软件包组或环境。
重要
如果您不确定应该安装哪些软件包,红帽建议您选择 Minimal Install 环境。最小安装 只提供运行 Red Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Linux 7 所需的软件包。这将显著降低系统受某个漏洞影响的机会。如果需要,可以在安装后再添加附加软件包。有关 最小安装 的详情,请参阅《Red Hat Enterprise Linux 7 安全指南》中的 安装最低软件包挂载部分
重要
要在 64 位系统中安装 32 位软件包,请使用构建该软件包的 32 位构架附加软件包名称,例如 glibc.i686。还必须在 Kickstart 文件中指定 --multilib 选项;请参见以下可用选项。
重要
除非安装桌面环境和 X Window 系统且启用了图形登录,否则 初始设置 不会在从 Kickstart 文件安装系统后运行。这意味着,默认情况下,除了 root 外,不会创建任何用户。在安装其他系统前,您可以在 Kickstart 文件中使用 user 选项创建用户(详情请参阅 第 27.3.1 节 “Kickstart 命令和选项” ),或者以 root 用户身份使用虚拟控制台登录安装的系统,并使用 useradd 命令添加用户。
%packages 部分必须以 %end 命令结尾。
指定环境
除了组外,您还可以指定要安装的整个环境:
%packages
@^Infrastructure Server
%end
此命令将安装属于 Infrastracture Server 环境一部分的所有软件包。在 Red Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Linux 7 安装 DVD 中描述所有可用环境。 在 Kickstart 文件中只能指定一个环境。
指定组
指定组、一个条目到一行,以 @ 符号开头,然后指定为 *-comps- 变量.architecture . xml 文件中给出的完整组名或组 ID。例如:
%packages
@X Window System
@Desktop
@Sound and Video
%end
Core 组总是被选择 - 不需要在 %packages 部分指定它。
*-comps-variant.xml 文件还为每个 Red Hat Enterprise Linuxnbsp 变体定义了名为 Conflicts(变体 ) 的组;Hat Enterprise Red Hat Enterprise Linuxnbsp;Linux.这个组包含已知导致文件冲突的所有软件包,并应该被排除。
指定单个软件包
根据名称指定单个软件包,每个条目对应一行。您可以在软件包名称中使用星号字符(*)作为 通配符。例如:
%packages
sqlite
curl
aspell
docbook*
%end
docbook* 条目包含软件包 docbook-dtdsdocbook-simpledocbook-slides 以及其他与通配符代表的模式匹配的软件包。
排除环境、组或软件包
使用前导短划线(-)指定安装中排除的软件包或组。例如:
%packages
-@Graphical Internet
-autofs
-ipa*fonts
%end
重要
不支持在 Kickstart 文件中使用 * 安装所有可用软件包,即使您不包括 @Conflicts(变体 组。
您可以使用多个选项更改 %packages 部分的默认行为。有些选项可以用于整个软件包选择,其它选项只与特定的组一起使用。

常用软件包选择选项

以下选项可用于 %packages :要使用某个选项,请将其附加到软件包选择部分的开头。例如:
%packages --multilib --ignoremissing
--default
安装默认软件包组。这与在交互式安装过程中的软件包选择页面中没有其他 选择 时要安装的软件包集合对应。
--excludedocs
不要安装软件包中的任何文档。在大多数情况下,这不包括通常安装在 /usr/share/doc 目录中的任何文件,但要排除的特定文件取决于各个软件包。
--ignoremissing
忽略安装源中缺少的软件包、组和环境,而不是停止安装询问是否应中止或继续安装。
--instLangs=
指定要安装的语言列表。请注意,这与软件包组级别选择不同。这个选项没有描述应该安装哪些软件包组,而是设定 RPM 宏控制应该安装单个软件包的转换文件。
Red Hat Enterprise Linux 软件包使用 ISO 639 语言代码。运行 locale -a 命令为您提供了适用于 %packages --instLangs= 参数的综合语言代码列表。

例 27.5. 指定要安装的语言列表

  • 安装指定区域设置代码的冒号分隔列表:
    %packages --instLangs=es:fr:it
  • 省略 --instLangs= 选项会安装所有区域设置:
    %packages
  • 省略语言代码不会安装区域设置:
    %packages --instLangs=
--multilib
为多 lib 软件包配置安装的系统,允许在 64 位系统中安装 32 位软件包,并安装在这部分中指定的软件包。
通常,在 AMD64 和 Intel 64 系统中,您只能安装 x86_64noarch 软件包。但是,使用 --multilib 选项,您可以自动安装 32 位 AMD 和 i686 Intel 系统软件包(若有)可用。
这只适用于 %packages 部分明确指定的软件包。那些只作为相依性安装而没有在 Kickstart 文件中指定的软件包只能安装到需要它们的架构版本中,即使它们可用于更多构架。
这个选项在安装和运行中的系统上都可以使用"yum"命令。
--nocore
禁用 @Core 软件包组的安装,否则该安装默认为始终安装。使用 --nocore 禁用 @Core 软件包组应当仅用于创建轻量级容器;使用 --nocore 安装桌面或服务器系统将导致系统不可用。
注意
--retries=
设置 Yum 尝试下载软件包的次数(重试)。默认值为 10。这个选项只适用于安装期间,它不会影响安装的系统上的 Yum 配置。
--timeout=
以秒为单位设置 Yum 超时。默认值为 30。这个选项只适用于安装期间,它不会影响安装的系统上的 Yum 配置。

特定软件包组的选项

这个列表中的选项仅适用于单个软件包组。不要在 Kickstart 文件中的 %packages 命令中使用它们,而是将它们附加到组名称中。例如:
%packages
@Graphical Internet --optional
%end
--nodefaults
仅安装组的强制软件包,而不是默认选择。
--Optional
除了安装默认选择外,还要安装在 *-comps-variant. architecture.xml 文件中的组定义中标记为可选的软件包。
请注意,某些包组 (如科学支持) 没有指定任何强制或默认包 - 仅指定可选包。在这种情况下,必须始终使用 --optional 选项,否则不会安装该组中的软件包。