您可以在 sysidcfg 文件中指定一组关键字以预配置系统。sysidcfg 文件关键字中对这些关键字进行了描述。
在安装 Solaris OS 期间,sysidcfg 文件中的 name_service 关键字会自动设置命名服务。此设置将覆盖先前为 site.xml 设置的 SMF 服务。因此,您可能需要在安装之后重置名称服务。
您必须为每个需要不同配置信息的系统创建一个唯一的 sysidcfg 文件。如果要为一组系统指定相同的时区,那么您可以使用同一个 sysidcfg 文件预配置这些系统上的时区。但是,如果要为其中每个系统预先配置一个不同的 root(超级用户)口令,则需要为每个系统创建一个唯一的 sysidcfg 文件。
您可以将 sysidcfg 文件放在以下位置之一。
表 2–2 sysidcfg 位置
NFS 文件系统 |
如果您将 sysidcfg 文件放在共享的 NFS 文件系统中,则当您设置系统以便从网络安装时,必须使用 add_install_client(1M) 命令的 -p 选项。 -p 选项指定了安装当前 Solaris 发行版时,系统可以找到 sysidcfg 文件的位置。 |
UFS 或 PCFS 软盘 |
将 sysidcfg 文件放在软盘的根 (/) 目录中。 如果要执行自定义 JumpStart 安装,且要使用软盘上的 sysidcfg 文件,那么您必须将 sysidcfg 文件放在配置文件软盘上。要创建配置文件软盘,请参见《Solaris 10 5/08 安装指南:自定义 JumpStart 和高级安装》中的“创建独立系统的配置文件软盘”。 在一个目录或一张软盘中只能放置一个 sysidcfg 文件。如果创建了多个 sysidcfg 文件,那么您必须将各个文件放在不同的目录或不同的软盘中。 |
HTTP 或 HTTPS 服务器 |
如果要执行 WAN Boot 安装,请将 sysidcfg 文件放在 Web 服务器的文档根目录中。 |
您可以使用命名服务或 DHCP 来预配置系统。有关信息,请参见第 3 章,使用命名服务或 DHCP 进行预配置。
使用所需关键字在文本编辑器中创建名为 sysidcfg 的文件。
使用表 2–2 中介绍的位置之一,使 sysidcfg 文件可供客户机使用。
以下示例是一个基于 SPARC 的系统的 sysidcfg 文件。该系统的主机名、IP 地址和网络掩码均已通过编辑命名服务进行了预配置。因为所有的系统配置信息都已在此文件中预配置,所以您可以使用自定义 JumpStart 配置文件来执行自定义 JumpStart 安装。在此示例中,NFSv4 域名自动从命名服务中派生。 因为此示例中不包含 service_profile 关键字,所以在安装期间,配置不会针对网络服务而更改。
keyboard=US-English system_locale=en_US timezone=US/Central terminal=sun-cmd timeserver=localhost name_service=NIS {domain_name=marquee.central.example.com name_server=nmsvr2(172.31.112.3)} nfs4_domain=dynamic root_password=m4QPOWNY network_interface=hme0 {hostname=host1 default_route=172.31.88.1 ip_address=172.31.88.210 netmask=255.255.0.0 protocol_ipv6=no} security_policy=kerberos {default_realm=example.com admin_server=krbadmin.example.com kdc=kdc1.example.com, kdc2.example.com} |
以下这个 sysidcfg 文件样例用于一组基于 x86 的系统。 在此示例中,将 NFSv4 域名指定为 example.com。此自定义名称会覆盖缺省域名。另外,在此示例中,网络服务被禁用,或被限制为只能进行本地连接。
keyboard=US-English timezone=US/Central timeserver=timehost1 terminal=ibm-pc service_profile=limited_net name_service=NIS {domain_name=marquee.central.example.com name_server=nmsvr2(172.25.112.3)} nfs4_domain=example.com root_password=URFUni9 |
以下 sysidcfg 文件样例中,为 eri0 和 eri1 网络接口指定了配置信息。eri0 接口被配置为主网络接口,而 eri1 被配置为辅助网络接口。在本示例中,NFSv4 域名自动从命名服务中派生。
timezone=US/Pacific system_locale=C terminal=xterms timeserver=localhost network_interface=eri0 {primary hostname=host1 ip_address=192.168.2.7 netmask=255.255.255.0 protocol_ipv6=no default_route=192.168.2.1} network_interface=eri1 {hostname=host1-b ip_address=192.168.3.8 netmask=255.255.255.0 protocol_ipv6=no default_route=NONE} root_password=JE2C35JGZi4B2 security_policy=none name_service=NIS {domain_name=domain.example.com name_server=nis-server(192.168.2.200)} nfs4_domain=dynamic
从网络安装系统时,如果您计划使用 sysidcfg 文件,那么您需要设置一个安装服务器,并将系统添加为安装客户机。有关更多信息,请参见第 4 章,从网络进行安装(概述)。
如果您计划在 WAN Boot 安装中使用 sysidcfg 文件,那么您需要执行其他任务。更多信息,请参见第 9 章,WAN Boot(概述)。
如果您计划在自定义 JumpStart 安装中使用 sysidcfg 文件,则必须创建一个配置文件和一个 rules.ok 文件。有关更多信息,请参见《Solaris 10 5/08 安装指南:自定义 JumpStart 和高级安装》中的第 2 章 “自定义 JumpStart(概述)”。
有关 sysidcfg 文件的更多信息,请参见 sysidcfg(4) 手册页。
您可以在 sysidcfg 文件中使用以下两种类型的关键字:独立关键字和依赖关键字。仅当其位于独立关键字中时,才能保证依赖关键字是唯一的。用关联的独立关键字对依赖关键字进行标识后,该依赖关键字才能存在。
在本示例中,name_service 是独立关键字,而 domain_name 和 name_server 是依赖关键字:
name_service=NIS {domain_name=marquee.central.example.com name_server=connor(192.168.112.3)} |
表 2–3 列出了可在 sysidcfg 文件中用来配置系统信息的关键字。
表 2–3 可在 sysidcfg 中使用的关键字
配置信息 |
关键字 |
---|---|
键盘布局和语言 | |
命名服务、域名和名称服务器 | |
网络接口、主机名、Internet 协议 (Internet Protocol, IP) 地址、网络掩码、DHCP 和 IPv6 | |
NFSv4 的域名定义 | |
超级用户口令 | |
安全策略 | |
网络安全性配置文件 | |
用于显示安装程序和桌面的语言 | |
终端类型 | |
时区 | |
日期和时间 |
以下各节描述了可在 sysidcfg 文件中使用的关键字。
sysidkdb 工具可配置 USB 语言及其相应的键盘布局。
将会发生以下过程:
如果键盘是自识别键盘,则会在安装期间自动配置键盘语言和布局。
如果键盘不是自识别键盘,sysidkdb 工具可在安装期间为您提供支持的键盘布局列表,以便您可以选择布局以进行键盘配置。
PS/2 键盘不是自识别键盘。在安装期间将会要求您选择键盘布局。
可以使用 keyboard 关键字配置键盘语言及其相应的键盘布局信息。每种语言都有其自己的键盘布局。请使用以下语法选择语言及其相应的布局。
keyboard=keyboard_layout
例如,以下项可设置德语的键盘语言及其相应的键盘布局:
keyboard=German
为 keyboard_layout 提供的值必须为有效值。否则,在安装期间必须进行交互式响应。有效的 keyboard_layout 字符串在 /usr/share/lib/keytables/type_6/kbd_layouts 文件中进行定义。
以前,在安装期间 USB 键盘假定自识别值为 1。因此,所有非自识别键盘总是在安装期间配置为美国英语键盘布局。
如果键盘不是自识别键盘,并且您希望在 JumpStart 安装期间防止进行提示,请在 sysidcfg 文件中选择键盘语言。对于 JumpStart 安装,缺省配置是美国英语。要选择其他语言及其相应的键盘布局,请按照上面所提供的示例来设置 sysidcfg 文件中的键盘项。
有关详细信息,请参见 sysidcfg(4) 和 sysidtool (1M) 手册页。
您可以使用 name_service 关键字来配置系统的命名服务、域名和名称服务器。以下样例显示了 name_service 关键字的通用语法。
name_service=name-service {domain_name=domain-name name_server=name-server optional-keyword=value} |
只选择一个 name_service 值;根据需要包含以下所有关键字,或不包含其中的任何关键字:domain_name、name_server 或可选关键字;如果未使用关键字,请省略花括号 {}。
在安装 Solaris OS 期间,sysidcfg 文件中的 name_service 选项会自动设置命名服务。 此设置将覆盖先前为 site.xml 设置的 SMF 服务。因此,您可能需要在安装之后重置名称服务。
以下部分对用于配置系统,以使用特定命名服务的关键字语法进行了说明。
请使用以下语法来配置系统,以使用 NIS 命名服务。
name_service=NIS {domain_name=domain-name name_server=hostname(ip-address)} |
指定域名
指定名称服务器的主机名
指定名称服务器的 IP 地址
以下示例指定域名为 west.example.com 的 NIS 服务器。服务器的主机名为 timber,服务器 IP 地址为 192.168.2.1。
name_service=NIS {domain_name=west.example.com name_server=timber(192.168.2.1)} |
有关 NIS 名称服务的更多信息,请参见《系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)》。
请使用以下语法来配置系统,以使用 NIS 名称服务。
name_service=NIS+ {domain_name=domain-name name_server=hostname(ip-address)} |
指定域名
指定名称服务器的主机名
指定名称服务器的 IP 地址
以下示例指定域名为 west.example.com 的 NIS+ 服务器。服务器的主机名为 timber,服务器 IP 地址为 192.168.2.1。
name_service=NIS+ {domain_name=west.example.com name_server=timber(192.168.2.1)} |
有关 NIS+ 名称服务的更多信息,请参见《System Administration Guide: Naming and Directory Services (NIS+)》。
请使用以下语法来配置系统,以使用 DNS。
name_service=DNS {domain_name=domain-name name_server=ip-address,ip-address,ip-address search=domain-name,domain-name,domain-name, domain-name,domain-name,domain-name} |
指定域名。
指定 DNS 服务器的 IP 地址。您最多可以将三个 IP 地址指定为 name_server 关键字的值。
(可选)指定附加域,以查找命名服务信息。您最多可以指定六个域名以进行查找,且每个查找项的总长度不能超过 250 个字符。
以下示例指定域名为 west.example.com 的 DNS 服务器。服务器 IP 地址为 10.0.1.10 和 10.0.1.20。example.com 和 east.example.com 作为附加域列出,以查找命名服务信息。
name_service=DNS {domain_name=west.example.com name_server=10.0.1.10,10.0.1.20 search=example.com,east.example.com} |
有关 DNS 名称服务的更多信息,请参见《系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)》。
请使用以下语法来配置系统,以使用 LDAP。
name_service=LDAP {domain_name=domain_name profile=profile_name profile_server=ip_address proxy_dn="proxy_bind_dn" proxy_password=password} |
指定 LDAP 服务器的域名。
指定要用来配置系统的 LDAP 配置文件的名称。
指定 LDAP 配置文件服务器的 IP 地址。
(可选)指定代理绑定的独特名称。您必须将 proxy_bind_dn 值括在双引号中。
(可选)指定客户机代理的口令。
以下示例指定具有以下配置信息的 LDAP 服务器。
域名为 west.example.com。
安装程序使用名为 default 的 LDAP 配置文件来配置系统。
LDAP 服务器的 IP 地址为 172.31.2.1。
代理绑定的独特名称包含以下信息。
该项的通用名称为 proxyagent。
组织单元为 profile。
代理域包括 west、example 和 com 域组件。
代理口令为 password。
name_service=LDAP {domain_name=west.example.com profile=default profile_server=172.31.2.1 proxy_dn="cn=proxyagent,ou=profile, dc=west,dc=example,dc=com" proxy_password=password} |
有关如何使用 LDAP 的更多信息,请参见《系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)》。
请使用 network_interface 关键字执行以下任务。
指定主机名
指定 IP 地址
指定缺省路由器地址
指定网络掩码值
使用 DHCP 配置网络接口
在网络接口上启用 IPv6
以下部分说明了如何使用 network_interface 关键字配置系统接口。
要断开系统的网络连接,请将 network_interface 值设置为 none。例如:
network_interface=none |
您可以使用以下数种方法利用 network_interface 关键字来配置单接口。
使用 DHCP-可以使用网络上的 DHCP 服务器来配置网络接口。有关如何在安装中使用 DHCP 服务器的更多信息,请参见使用 DHCP 服务预配置系统配置信息(任务)。
要使用 DHCP 服务器以在系统上配置单接口,请使用 network_interface 关键字的以下语法。
network_interface=PRIMARY or value {dhcp protocol_ipv6=yes-or-no} |
指示安装程序配置在系统上找到的第一个正常运行的非回送接口。其顺序与使用 ifconfig 命令时显示的顺序相同。如果没有正常运行的接口,那么将使用第一个非回送接口。如果没有找到非回送接口,说明系统没有联网。
指示安装程序配置特定的接口,如 hme0 或 eri1。
指示安装程序将系统配置为使用 IPv6,或配置为不使用 IPv6。
对于 WAN Boot 安装,必须将其设置为 protocol_ipv6=no。
不使用 DHCP-如果不想使用 DHCP 来配置网络接口,那么您可以在 sysidcfg 文件中指定配置信息。要指示安装程序在系统上配置单接口,但不使用 DHCP,请使用以下语法。
network_interface=PRIMARY or value {hostname=host_name default_route=ip_address ip_address=ip_address netmask=netmask protocol_ipv6=yes_or_no} |
指示安装程序配置在系统上找到的第一个正常运行的非回送接口。其顺序与使用 ifconfig 命令时显示的顺序相同。如果没有正常运行的接口,那么将使用第一个非回送接口。如果没有找到非回送接口,说明该系统没有联网。
如果要配置多个接口,那么请不要使用 PRIMARY 关键字值。
指示安装程序配置特定的接口,如 hme0 或 eri1。
(可选)指定系统的主机名。
(可选)指定缺省路由器的 IP 地址。如果要安装程序使用 ICMP 路由器发现协议来检测路由器,那么请省略此关键字。
如果安装程序无法检测到路由器,那么将在安装期间提示您输入路由器信息。
(可选)指定系统的 IP 地址。
(可选)指定系统的网络掩码值。
(可选)指示安装程序将系统配置为使用 IPv6,或配置为不使用 IPv6。
要执行自动自定义 JumpStart 安装,您必须指定 protocol_ipv6 关键字的值。
对于 WAN Boot 安装,必须将其设置为 protocol_ipv6=no。
根据需要,可以包含 hostname、ip_address 和 netmask 这三个关键字的任意组合,或者三者都不包含。如果未使用这三个关键字中的任何一个,那么请省略花括号 ({})。
以下示例指示安装程序使用 DHCP 来配置 eri0 网络接口。未启用 IPv6 支持。
network_interface=eri0 {dhcp protocol_ipv6=no} |
以下示例使用以下设置来配置接口 eri0。
主机名设置为 host1。
IP 地址设置为 172.31.88.100。
网络掩码设置为 255.255.255.0。
未在接口上启用 IPv6 支持。
network_interface=eri0 {hostname=host1 ip_address=172.31.88.100 netmask=255.255.255.0 protocol_ipv6=no} |
您可以在 sysidcfg 文件中配置多个网络接口。对于要配置的每个接口,请在 sysidcfg 文件中包含一个 network_interface 项。
您可以使用以下数种方法利用 network_interface 关键字来配置多个接口。
使用 DHCP-您可以使用网络上的 DHCP 服务器来配置网络接口。有关如何在安装中使用 DHCP 服务器的更多信息,请参见使用 DHCP 服务预配置系统配置信息(任务)。
要使用 DHCP 服务器来配置系统上的网络接口,请使用 network_interface 关键字的以下语法。
network_interface=value {primary dhcp protocol_ipv6=yes-or-no} |
指示安装程序配置特定的接口,如 hme0 或 eri1。
(可选)将 value 指定为主接口。
指示安装程序将系统配置为使用 IPv6,或配置为不使用 IPv6。
对于 WAN Boot 安装,必须将其设置为 protocol_ipv6=no。
不使用 DHCP-如果不想使用 DHCP 来配置网络接口,那么您可以在 sysidcfg 文件中指定配置信息。要指示安装程序配置多个接口,但不使用 DHCP,请使用以下语法。
network_interface=value {primary hostname=host_name default_route=ip_address or NONE ip_address=ip_address netmask=netmask protocol_ipv6=yes_or_no} |
指示安装程序配置特定的接口,如 hme0 或 eri1。
(可选)将 value 指定为主接口。
(可选)指定系统的主机名。
(可选)指定缺省路由器的 IP 地址。如果要安装程序使用 ICMP 路由器发现协议来检测路由器,那么请省略此关键字。
如果您在 sysidcfg 文件中配置多个接口,请将每个不使用静态缺省路由的辅助接口设置为 default_route=NONE。
如果安装程序无法检测到路由器,那么将在安装期间提示您输入路由器信息。
(可选)指定系统的 IP 地址。
(可选)指定系统的网络掩码值。
(可选)指示安装程序将系统配置为使用 IPv6,或配置为不使用 IPv6。
要执行自动自定义 JumpStart 安装,您必须指定 protocol_ipv6 关键字的值。
对于 WAN Boot 安装,必须将其设置为 protocol_ipv6=no。
根据需要,可以包含 hostname、ip_address 和 netmask 这三个关键字的任意组合,或者三者都不包含。如果未使用这三个关键字中的任何一个,那么请省略花括号 ({})。
在 sysidcfg 文件中,您可以使用 DHCP 来配置特定接口,同时还可以在同一个 sysidcfg 文件中指定其他接口的配置信息。
以下示例采用如下方法配置网络接口 eri0 和 eri1。
使用 DHCP 服务器来配置 eri0。未在 eri0 上启用 IPv6 支持。
eri1 是主网络接口。主机名设置为 host1,IP 地址设置为 172.31.88.100,网络掩码设置为 255.255.255.0。未在 eri1 上启用 IPv6 支持。
network_interface=eri0 {dhcp protocol_ipv6=no} network_interface=eri1 {primary hostname=host1 ip_address=172.146.88.100 netmask=255.255.255.0 protocol_ipv6=no} |
为了防止在安装期间要求指定 NFSv4 域名,请在 sysidcfg 文件中使用 nfs4_domain 关键字。此关键字可抑制在安装过程中选择域名。请使用以下语法:
nfs4_domain=dynamic or custom_domain_name |
此保留的关键字可根据命名服务配置动态派生 NFSv4 域名。例如:
nfs4_domain=dynamic |
此示例允许根据命名服务派生域名。
保留的关键字 dynamic 不区分大小写。
缺省情况下,NFSv4 使用根据系统的命名服务自动派生的域名。此域名足可以满足大多数配置的需要。在少数情况下,由于不存在通用域名,跨域边界的挂载点可能会导致文件看起来像是由 "nobody" 所有。为了防止出现这种情况,可以覆盖缺省域名,而选择一个自定义的域名。
此值会覆盖缺省的域名。
此值必须为一个有效的自定义域名。有效的域名只能由字母数字字符、句点、下划线和破折号组成。第一个字符必须为字母字符。例如:
nfs4_domain=example.com |
此示例将 nfsmapid 守护进程使用的值设置为 example.com。此选择会覆盖缺省的域名。
在以前的发行版中,通过使用脚本,可防止在安装期间要求用户提供 NFSv4 域名。
对于 Solaris 10 OS 中的 JumpStart 安装,您可以使用 JumpStart 样例脚本 set_nfs4_domain 作为解决方法来抑制安装期间的 NFSv4 提示。现在已不再需要此脚本,而是使用 sysidcfg 关键字 nfs4_domain。
在以前的发行版中,/etc/.NFS4inst_state.domain 文件由 sysidnfs4 程序创建。此文件将会抑制在安装期间提示提供 NFSv4 域名。现在已不再创建此文件,而是使用 sysidcfg 关键字 nfs4_domain。
您可以在 sysidcfg 文件中指定系统的超级用户口令。要指定超级用户口令,请按照以下语法使用 root_password 关键字。
root_password=encrypted-password |
encrypted-password 是加密的口令,与 /etc/shadow 文件中出现的一样。
您可以在 sysidcfg 文件中使用 security_policy 关键字来配置系统,以使用 Kerberos 网络验证协议。如果要配置系统,以使用 Kerberos,请使用以下语法。
security_policy=kerberos {default_realm=FQDN admin_server=FQDN kdc=FQDN1, FQDN2, FQDN3} |
FQDN 指定了 Kerberos 缺省域、管理服务器或密钥分发中心 (KDC) 的全限定域名。您必须指定至少一个(最多三个)密钥分发中心。
如果不想设置系统的安全策略,请将其设置为 security_policy=NONE。
有关 Kerberos 网络验证协议的更多信息,请参见《系统管理指南:安全性服务》。
以下示例将系统配置为使用具有以下信息的 Kerberos。
Kerberos 缺省域为 example.com。
Kerberos 管理服务器为 krbadmin.example.com。
两个密钥分发中心分别为 kdc1.example.com 和 kdc2.example.com。
security_policy=kerberos {default_realm=example.COM admin_server=krbadmin.example.com kdc=kdc1.example.com, kdc2.example.com} |
您可以使用 service_profile 关键字,通过限制网络服务来安装更安全的系统。此安全性选项仅适用于初始安装。升级时会保留所有以前设置的服务。
请使用以下语法之一设置此关键字。
service_profile=limited_net |
service_profile=open |
limited_net 指定禁用除安全 Shell 之外的所有网络服务,或对这些服务进行限制以使它们只响应本地请求。安装之后,可以使用 svcadm 和 svccfg 命令启用各个网络服务。
open 指定安装期间不对任何网络服务进行更改。
如果 sysidcfg 文件中不存在 service_profile 关键字,则在安装期间不会对网络服务的状态进行任何更改。
可以通过使用 netservices open 命令,或通过使用 SMF 命令启用各个服务,在安装后启用网络服务。请参见《Solaris 10 5/08 安装指南:规划安装和升级》中的“在安装后修改安全性设置”。
有关在安装期间限制网络安全性的详细信息,请参见《Solaris 10 5/08 安装指南:规划安装和升级》中的“规划网络安全性”。另请参见以下手册页。
netservices(1M)
svcadm(1M)
svccfg(1M) 命令
您可以使用 system_locale 关键字指定用于显示安装程序和桌面的语言。请使用以下语法指定语言环境。
system_locale=locale |
locale 指定了希望系统用来显示安装面板和屏幕的语言。有关有效语言环境值的列表,请参见 /usr/lib/locale 目录或《国际语言环境指南》。
您可以使用 terminal 关键字来指定系统的终端类型。请使用以下语法指定终端类型。
terminal=terminal_type |
terminal_type 指定了系统的终端类型。有关有效终端值的列表,请参见 /usr/share/lib/terminfo 目录中的子目录。
您可以使用 timezone 关键字来设置系统的时区。请使用以下语法。
timezone=timezone |
在以上示例中,timezone 指定了系统的时区值。/usr/share/lib/zoneinfo 目录中的目录和文件提供了有效时区值。timezone 的值是相对于 /usr/share/lib/zoneinfo 目录的路径的名称。您也可以指定任何有效的 Olson 时区。
在以下示例中,系统时区被设置为美国的山地标准时间。
timezone=US/Mountain |
安装程序对系统进行了配置,以使用 /usr/share/lib/zoneinfo/US/Mountain 中的时区信息。
您可以使用 timeserver 关键字来指定用于在要安装的系统上设置日期和时间的系统。
请选择以下方法之一来设置 timeserver 关键字。
要配置系统,将其用作自己的时间服务器,那么请将该关键字设置为 timeserver=localhost。如果将 localhost 指定为时间服务器,那么将假设系统时间是正确的。
要将其他系统指定为时间服务器,请使用 timeserver 关键字指定该时间服务器的主机名或 IP 地址。请使用以下语法。
timeserver=hostname or ip-address |
hostname 是时间服务器系统的主机名。ip-address 指定了时间服务器的 IP 地址。