Solaris 9 12/03 安装指南

第 7 章 预先配置系统配置信息(任务)

本章说明如何预先配置系统信息。预先配置有助于您在安装 Solaris 操作环境时避免系统提示您输入该信息。本章还说明如何预先配置 Power ManagementTM 信息。本章包含以下几节:

预先配置系统配置信息的优点

各种安装方法都需要关于系统的配置信息,如外围设备、主机名、网际协议 (IP) 地址和名称服务。在安装工具提示您输入配置信息之前,它们会首先依次在 sysidcfg 文件和名称服务数据库中检查该信息。

如果 Solaris Web Start 程序、Solaris suninstall 程序 或定制 JumpStart 安装程序检测到预先配置的系统信息,则安装程序将不会提示您输入该信息。例如,您有若干个系统,并且不希望每次在其中一个系统上安装 Solaris 9 软件时都提示输入时区。您可以在 sysidcfg 文件中或在名称服务数据库中指定时区。这样在安装 Solaris 9 软件时,安装程序就不会提示您键入时区了。

预先配置系统配置信息的方法

您可以选择以下方法之一来预先配置系统配置信息。您可以将系统配置信息添加到以下任何一个位置中。

如果您的站点使用 DHCP,您也可以在站点 DHCP 服务器上预先配置某些系统信息。关于如何使用 DHCP 服务器以预先配置系统信息的详细信息,请参见使用 DHCP 服务预先配置系统配置信息(任务)

请使用下表确定是否使用 sysidcfg 文件或名称服务数据库来预先配置系统配置信息。

表 7–1 预先配置系统配置信息的方法

可预先配置的系统信息 

可以使用 sysidcfg 文件预先配置吗?

可以使用名称服务预先配置吗?

名称服务 

是 

是 

域名 

是 

否 

名称服务器 

是 

否 

网络接口 

是 

否 

主机名 

是 

由于此信息是特定于系统的,因此请编辑名称服务,而不是为每个系统创建一个不同的 sysidcfg 文件。

是 

网际协议 (IP) 地址 

是 

由于此信息是特定于系统的,因此请编辑名称服务,而不是为每个系统创建一个不同的 sysidcfg 文件。

是 

网络掩码 

是 

否 

DHCP 

是 

否 

IPv6 

是 

否 

缺省路由 

是 

否 

超级用户口令 

是 

否 

安全策略 

是 

否 

用来显示安装程序和桌面的语言(语言环境) 

是 

如果是 NIS 或 NIS+,则可以 

如果是 DNS 或 LDAP,则不可以 

终端类型 

是 

否 

时区 

是 

是 

日期和时间 

是 

是 

Web 代理 

否 

您可以在安装 Solaris Web Start 时配置此信息,但是不能通过 sysidcfg 文件或名称服务来进行配置。

否 

x86:监视器类型 

是 

否 

x86:键盘语言、键盘布局 

是 

否 

x86:图形卡、颜色深度、显示分辨率、屏幕大小 

是 

否 

x86:定位设备、按钮数目、IRQ 级 

是 

否 

SPARC:Power Management (自动停机) 

您不能通过 sysidcfg 文件或名称服务预先配置 Power Management。SPARC: 预先配置 Power Management 信息包含详细信息。

否 

否 

使用 sysidcfg 文件进行预先配置

您可以在 sysidcfg 文件中指定一组关键字来预先配置一个系统。这些关键字在表 7–2 中进行了说明。

您必须为每一个需要不同配置信息的系统创建一个唯一的 sysidcfg 文件。如果要为所有系统指定相同的时区,则可以使用同一个 sysidcfg 文件在一组系统上预先配置时区。但是,如果要为其中每个系统预先配置一个不同的根(超级用户)口令,则需要为每个系统创建一个唯一的 sysidcfg 文件。

您可以将 sysidcfg 文件放在下面的一个位置中。


注意:

如果您正在执行定制 JumpStart 安装,并且要使用软盘上的 sysidcfg 文件,则必须将 sysidcfg 文件放在配置文件软盘上。要创建配置文件软盘,请参见为独立系统创建配置文件盘


在一个目录或一张软盘中只能放置一个 sysidcfg 文件。如果您创建了多个 sysidcfg 文件,则必须将每个文件放在不同的目录或软盘中。

sysidcfg 文件的语法规则

您可以在 sysidcfg 文件中使用以下两种类型的关键字:独立关键字和依赖关键字。依赖关键字只在独立关键字中被保证是唯一的。依赖关键字只有在通过其关联的独立关键字进行标识时才存在。

在本例中,name_service 是独立关键字,而 domain_namename_server 则是依赖关键字:

name_service=NIS {domain_name=marquee.central.sun.com
name_server=connor(129.152.112.3)}

语法规则 

实例 

独立关键字可以按任意顺序列出。 

pointer=MS-S
display=ati {size=15-inch}

关键字不区分大小写。 

TIMEZONE=US/Central
terminal=PC Console

将所有依赖关键字用花括号 ({}) 括起来以使其与关联的独立关键字绑定在一起。 

name_service=NIS 
       {domain_name=marquee.central.sun.com
        name_server=connor(129.152.112.3)}

您还可以将值括在单引号 (`) 或双引号 (“) 中。 

network_interface='none'

一个关键字只有一个实例有效。但如果多次指定一个关键字,则仅使用该关键字的第一个实例。 

network_interface=none
network_interface=le0

sysidcfg 文件关键字

下表说明了在 sysidcfg 文件中可以使用的关键字。

表 7–2 sysidcfg 中可以使用的关键字

配置信息 

关键字 

值或实例 

名称服务、域名、名称服务器 

name_service=NIS, NIS+, DNS, LDAP, NONE

 
  

NIS 和 NIS+ 选项:{domain_name=domain_name name_server=hostname(ip_address)}

name_service=NIS {domain_name=west.arp.com name_server=timber(129.221.2.1)}

name_service=NIS+ {domain_name=west.arp.com. name_server=timber(129.221.2.1)}

 

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 (最多六个,总长度小于或等于 250 个字符)}

name_service=DNS {domain_name=west.arp.com name_server=10.0.1.10,10.0.1.20 search=arp.com,east.arp.com}


注意:

只选择一个 name_service 值。根据需要,可以包含 domain_namename_server 这两个关键字中的任何一个,也可以同时包含这两者,或者两者都不包含。如果都不使用,请省略花括号 {}。


 

LDAP 选项:{domain_name=domain_name profile=profile_name profile_server=ip_address proxy_dn="proxy_bind_dn" proxy_password=password}

name_service=LDAP 
{domain_name=west.arp.com 
profile=default 
profile_server=129.221.2.1 
proxy_dn="cn=proxyagent,ou=profile,
dc=west,dc=arp,dc=com" 
proxy_password=password}


注意:

proxy_dnproxy_password 为可选的关键字。proxy_dn 值必须用双引号括住。


网络接口、主机名、网际协议 (IP) 地址、网络掩码、DHCP、IPv6 

network_interface=NONE, PRIMARY, or value

  • NONE 可以关闭联网。

  • PRIMARY 是在系统中找到的第一个启用的非回送接口。顺序与“ifconfig”相同。如果没有启用任何接口,则使用第一个非回送接口。如果没有找到任何非回送接口,则系统将被设置为 NON-NETWORKED。

  • value 指定一个接口,如 le0 或 hme0。

  如果确实要使用 DHCP,则请指定:{dhcp protocol_ipv6=yes_or_no}

network_interface=primary {dhcp protocol_ipv6=yes}

 

如果使用 DHCP,则请指定:{hostname=host_name default_route=ip_address or NONE ip_address=ip_address netmask=netmask protocol_ipv6=yes_or_no}


注意:

如果不使用 DHCP,则不必指定 protocol_ipv6=yesdefault_route。但请注意以下问题。

  • JumpStart 安装需要立即指定 protocol_ipv6,否则稍后就会以交互方式提示您输入它。

  • 如果未指定 default_route 并且使用 ICMP 路由器发现协议无法检测到路由,将提示您选择一个路由。


如果在安装 WAN Boot 时使用 sysidcfg 文件,则必须设置 protocol_ipv6=no

network_interface=le0 {hostname=feron default_route=129.146.88.1 ip_address=129.146.88.210 netmask=255.255.0.0 protocol_ipv6=no}


注意:

只选择一个 network_interface 值。根据需要,可以包含 hostnameip_addressnetmask 这三个关键字的任意组合,或者三者都不包含。如果不使用这三个关键字中的任何一个,则省略花括号 ({})。


超级用户口令 

root_password=root_password

/etc/shadow 加密。

安全策略 

security_policy=kerberos, NONE

Kerberos 选项:{default_realm=FQDN admin_server=FQDN kdc=FQDN1, FQDN2, FQDN3}

FQDN 是一个全限定域名。)

security_policy=kerberos 
{default_realm=Yoursite.COM 
admin_server=krbadmin.Yoursite.COM 
kdc=kdc1.Yoursite.COM, 
kdc2.Yoursite.COM}


注意:

您最多可以列出三个密钥分发中心 (KDC),但至少需要列出一个。


显示用于显示安装程序和桌面的语言 

system_locale=locale

/usr/lib/locale 目录或附录 D,语言环境值(参考) 提供有效的语言环境值。

终端类型 

terminal=terminal_type

/usr/share/lib/terminfo 目录中的子目录提供有效的终端值。

时区 

timezone=timezone

/usr/share/lib/zoneinfo 目录中的目录和文件提供有效的时区值。时区值是相对于 /usr/share/lib/zoneinfo 目录的路径的名称。例如,美国山地标准时间的时区值为 US/Mountain。日本的时区值为 Japan。您还可以指定任何有效的 Olson 时区。

日期和时间 

timeserver=localhost, hostname, ip_addr

如果您将 localhost 指定为时间服务器,则假定系统时间正确。如果您没有运行名称服务,并且指定了某个系统的 hostnameip_addr,则该系统的时间将用于设置时间。

x86:监视器类型 

monitor=monitor_type

在要安装的系统上运行 kdmconfig -d filename。将输出附加到 sysidcfg 文件。

x86:键盘语言、键盘布局 

keyboard=keyboard_language {layout=value}

在要安装的系统上运行 kdmconfig -d filename。将输出附加到 sysidcfg 文件。

x86:图形卡、屏幕大小、颜色深度、显示分辨率 

display=graphics_card {size=screen_size depth=color_depth resolution=screen_resolution}

在要安装的系统上运行 kdmconfig -d filename。将输出附加到 sysidcfg 文件。

x86:定位设备、按钮数目、IRQ 级 

pointer=pointing_device {nbuttons=number_buttons irq=value}

在要安装的系统上运行 kdmconfig -d filename。将输出附加到 sysidcfg 文件。

创建 sysidcfg 配置文件

  1. 在文本编辑器中创建一个名为 sysidcfg 的文件。

  2. 键入所需要的 sysidcfg 关键字。

  3. 保存 sysidcfg 文件。


    注意:

    如果创建了多个 sysidcfg 文件,则必须将每个文件分别保存在不同的目录中或不同的软盘上。


  4. 通过以下方法使 sysidcfg 文件可以由各客户机使用:

    • 共享的 NFS 文件系统。使用带 -p 选项的 add_install_client(1M) 来设置将从网络安装的系统。

    • UFS 软盘或 PCFS 软盘上的根 (/) 目录。

SPARC: sysidcfg 文件实例

下面是一个 sysidcfg 文件的实例,用于一组基于 SPARC 的系统。这些系统的主机名、IP 地址和网络掩码已通过编辑名称服务得到预先配置。由于所有系统配置信息都是在该文件中预先配置的,因此您可以使用定制 JumpStart 配置文件来执行定制 JumpStart 安装。

system_locale=en_US
timezone=US/Central
terminal=sun-cmd
timeserver=localhost
name_service=NIS {domain_name=marquee.central.sun.com
                  name_server=connor(129.152.112.3)}
root_password=m4QPOWNY
network_interface=le0 {hostname=feron 
                       default_route=129.146.88.1 
                       ip_address=129.146.88.210 
                       netmask=255.255.0.0 
                       protocol_ipv6=no}
security_policy=kerberos {default_realm=Yoursite.COM 
                          admin_server=krbadmin.Yoursite.COM 
                          kdc=kdc1.Yoursite.COM, 
                          kdc2.Yoursite.COM}

x86: sysidcfg 文件实例

以下 sysidcfg 文件实例用于一组基于 x86 的系统,其中每个系统都使用相同类型的键盘、图形卡和定位设备。设备信息(keyboarddisplaypointer)通过运行带有 -d 选项的 kdmconfig(1M) 命令获取。如果使用下面的 sysidcfg 文件实例,屏幕上将显示提示,要求您选择一种语言 (system_locale),然后才能继续进行安装。

keyboard=ATKBD {layout=US-English}
display=ati {size=15-inch}
pointer=MS-S
timezone=US/Central
timeserver=connor
terminal=ibm-pc
name_service=NIS {domain_name=marquee.central.sun.com
                  name_server=connor(129.152.112.3)}
root_password=URFUni9

使用名称服务进行预先配置

下表对名称服务数据库进行了高级概述,您需要编辑和填充这些数据库来预先配置系统信息。

要预先配置的系统信息 

名称服务数据库 

主机名和网际协议 (IP) 地址 

hosts

日期和时间 

hosts。在为所安装的系统提供日期和时间的系统的主机名旁边指定 timehost 假名。

时区 

timezone

网络掩码 

netmasks

您不能使用 DNS 或 LDAP 名称服务来预先配置系统的语言环境。如果使用 NIS 或 NIS+ 名称服务,则请遵循该名称服务的过程来预先配置系统的语言环境:

使用 NIS 预先配置语言环境

  1. 首先成为名称服务器上的超级用户。

  2. 更改 /var/yp/Makefile 以添加语言环境映射。

    1. 在最后一个 variable.time shell 过程后面插入以下 shell 过程。

      locale.time:  $(DIR)/locale
              -@if [ -f $(DIR)/locale ]; then \
                     sed -e "/^#/d" -e s/#.*$$// $(DIR)/locale \
                     | awk '{for (i = 2; i<=NF; i++) print $$i, $$0}' \
                     | $(MAKEDBM) - $(YPDBDIR)/$(DOM)/locale.byname; \
                     touch locale.time; \
                     echo "updated locale"; \
                     if [ ! $(NOPUSH) ]; then \
                             $(YPPUSH) locale.byname; \
                             echo "pushed locale"; \
                     else \
                     : ; \
                     fi \
              else \
                     echo "couldn't find $(DIR)/locale"; \
              fi
    2. 查找字符串 all: 并在变量列表的末尾插入 locale 一词。

      all: passwd group hosts ethers networks rpc services protocols \
      	netgroup bootparams aliases publickey netid netmasks c2secure \
      	timezone auto.master auto.home locale
      
    3. 在接近该文件末尾处和其类型的最后一项后面,另起一行插入字符串 locale: locale.time

      passwd: passwd.time
      group: group.time
      hosts: hosts.time
      ethers: ethers.time
      networks: networks.time
      rpc: rpc.time
      services: services.time
      protocols: protocols.time
      netgroup: netgroup.time
      bootparams: bootparams.time
      aliases: aliases.time
      publickey: publickey.time
      netid: netid.time
      passwd.adjunct: passwd.adjunct.time
      group.adjunct: group.adjunct.time
      netmasks: netmasks.time
      timezone: timezone.time
      auto.master: auto.master.time
      auto.home: auto.home.time
      locale: locale.time
      
    4. 保存文件。

  3. 创建文件 /etc/locale 并为每个域或特定系统生成一项:

    locale domain_name
    

    locale system_name
    

    注意:

    附录 D,语言环境值(参考) 包含有效语言环境的列表。


    例如,下面这项指定 worknet.com 域中使用的缺省语言为法文:

    fr worknet.com

    下面这项指定名为 charlie 的系统所使用的缺省语言环境为比利时法文:

    fr_BE charlie 

    注意:

    语言环境可以从 Solaris DVD 或 Solaris Software 1 of 2 CD 中获得。


  4. 建立映射:


    # cd /var/yp; make
    

    通过域指定的系统或分别在 locale 映射中指定的系统现在被设置为使用缺省语言环境。所指定的缺省语言环境将在安装过程中使用,并在重新引导系统之后由桌面使用。

使用 NIS+ 预先配置语言环境

以下过程假定已经设置 NIS+ 域。对 NIS+ 域的设置被记录在System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP)中。

  1. 以超级用户或 NIS+ 管理组中用户的身份登录到名称服务器。

  2. 创建 locale 表:


    # nistbladm -D access=og=rmcd,nw=r -c locale_tbl name=SI,nogw= 
    locale=,nogw= comment=,nogw= locale.org_dir.`nisdefaults -d` 
    
  3. 将所需项添加到 locale 中。


    # nistbladm -a name=name locale=locale comment=comment 
    locale.org_dir.`nisdefaults -d`
    
    name

    要为其预先配置缺省语言环境的域名或特定系统名。

    locale

    要在系统上安装并在重新引导系统之后在桌面上使用的语言环境。附录 D,语言环境值(参考) 包含有效语言环境的列表。

    comment

    注释字段。使用双引号来开始和结束多于一个字的注释。


    注意:

    语言环境可以从 Solaris DVD 或 Solaris Software 1 of 2 CD 中获得。


    通过域指定的系统或分别在 locale 表中指定的系统现在设置为使用缺省语言环境。所指定的缺省语言环境将在安装过程中使用,并在重新引导系统之后由桌面使用。

使用 DHCP 服务预先配置系统配置信息(任务)

动态主机配置协议 (DHCP) 使 TCP/IP 网络中的主机系统能够在引导时被自动配置,以适应网络。DHCP 使用客户机和服务器机制。服务器为客户机存储和管理配置信息,并按照客户机的请求提供此信息。该信息包含客户机的 IP 地址,以及客户机可以使用的关于网络服务的信息。

DHCP 的主要优点是它能够通过租用来管理 IP 地址的指定。租用使 IP 地址可以在不使用时被回收并被重新指定给其它客户机。如果为所有客户机均指定了永久地址,则此功能使站点可以使用比所需 IP 地址池小的 IP 地址池。

您可以使用 DHCP 在网络上的特定客户机系统中安装 Solaris 操作环境。只有符合运行 Solaris 操作环境的硬件要求的 Sun Enterprise Ultra 系统和 x86 系统才可以使用此功能。

以下任务图显示了必须执行的高级任务,使客户机可以通过使用 DHCP 来获得安装参数。

表 7–3 任务图:使用 DHCP 服务预先配置系统配置信息

任务 

说明 

说明 

设置安装服务器。 

设置 Solaris 服务器以支持必须从网络安装 Solaris 操作环境的客户机。 

第 10 章,准备从网络安装(概述)

通过使用 DHCP 在网络上为 Solaris 安装设置客户机系统。 

使用 add_install_client -d为某类客户机(例如,特定类型的计算机)或特定客户机 ID 添加 DHCP 网络安装支持。

使用 Solaris DVD: 

使用 DVD 映像添加要从网络安装的系统

使用 Solaris CD: 

添加要使用 CD 映像从网络上安装的系统

add_install_client(1M)

准备您的网络以使用 DHCP 服务。 

决定要如何配置您的 DHCP 服务器。 

System Administration Guide: IP Services》中的“Planning for DHCP Service (Task)”

配置 DHCP 服务器。 

使用 DHCP Manager 来配置您的 DHCP 服务器 

System Administration Guide: IP Services》中的“Configuring DHCP Service (Task)”

为安装参数和包含选项的宏创建 DHCP 选项。 

使用 DHCP Manager 或 dhtadm 创建新的供应商选项和宏,DHCP 服务器可以使用这些选项和宏将安装信息传送到客户机。

为 Solaris 安装参数创建 DHCP 选项和宏

为 Solaris 安装参数创建 DHCP 选项和宏

当您使用 add_install_client -d 脚本在安装服务器上添加客户机时,脚本将把 DHCP 配置信息报告到标准输出。在创建将网络安装信息传送给客户机所需的选项和宏时,可以使用此信息。

要从网络安装 DHCP 客户机,您必须创建供应商种类选项,以传送安装 Solaris 操作环境所需的信息。表 7–4 显示了您必须创建的选项以及创建这些选项所需的属性。下表中列出的供应商客户机类确定哪些类的客户机可以使用该选项。此处列出的供应商客户机类仅作实例使用。您应当指定客户机类,它表示您的网络中需要从网络安装的实际客户机。关于如何确定客户机的供应商客户机类的信息,请参见System Administration Guide: IP Services》中的“Working With DHCP Options (Task Map)”

关于 DHCP 选项的详细信息,请参见System Administration Guide: IP Services》中的“DHCP Option Information”

表 7–4 用于为 Solaris 客户机创建供应商种类选项的值

名称 

代码 

数据类型 

粒度 

最大值 

供应商客户机类 * 

说明 

需要以下供应商种类选项,以使 DHCP 服务器能够支持 Solaris 安装客户机。这些选项在 Solaris 客户机的启动脚本中使用。

SrootIP4

IP 地址 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

根服务器的 IP 地址 

SrootNM

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

根服务器的主机名 

SrootPTH

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

根服务器上客户机的根目录的路径 

SinstIP4

10 

IP 地址 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

JumpStart 安装服务器的 IP 地址  

SinstNM

11 

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

安装服务器的主机名 

SinstPTH

12 

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

安装服务器上的安装映像的路径 

客户机启动脚本可以使用以下选项,但是脚本不需要使用这些选项。

SrootOpt

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

客户机的根文件系统的 NFS 装载选项 

SbootFIL

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

客户机的根文件的路径 

SbootRS

9  

数字 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

在装入内核时,NFS 读取独立引导程序所使用的大小 

SsysidCF

13 

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

sysidcfg 文件的路径,格式为 server:/path

SjumpsCF

14 

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

JumpStart 配置文件的路径,格式为 server:/path

SbootURI

16 

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

独立引导文件的路径或 WAN Boot 文件的路径。对于独立引导文件,请使用以下格式。 

tftp://inetboot.sun4u

对于 WAN Boot 文件,格式为 

http://host.domain/path-to-file

可以使用此选项覆盖 BootFilesiaddr 设置,以便检索独立引导文件。支持的协议:tftp (inetboot) 和 http (wanboot)。 例如,使用以下格式。tftp://inetboot.sun4u

SHTTPproxy

17 

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

您的网络中使用的代理服务器的 IP 地址和端口号。仅当客户机在 WAN 内引导时才需要此选项,并且本地网络使用代理服务器。例如,使用以下格式: 198.162.10.5:8080

Solaris 客户机启动脚本当前不使用以下选项。仅当您编辑启动脚本时,才可以使用这些选项。

SswapIP4

IP 地址 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

交换服务器的 IP 地址 

SswapPTH

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

交换服务器上客户机的交换文件的路径 

Stz

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

客户机的时区 

Sterm

15 

ASCII 文本 

SUNW.Sun-Blade-1000, SUNW.Sun-Fire-880, SUNW.i86pc

终端类型 

创建了选项以后,您可以创建包含这些选项的宏。下表列出了样例宏,您可以创建这些宏以支持客户机的 Solaris 安装。

表 7–5 支持网络安装客户机的样例宏

宏名 

包含这些选项和宏 

Solaris

SrootIP4, SrootNM, SinstIP4, SinstNM

sparc

SrootPTH, SinstPTH

sun4u

Solarissparc

i86pc

Solaris 宏、SrootPTH, SinstPTH, SbootFIL

SUNW.i86pc

i86pc

SUNW.Sun-Blade-1000

sun4u 宏、SbootFIL

SUNW.Sun-Fire-880

sun4u 宏、SbootFIL

xxx.xxx.xxx.xxx 网络地址宏

可以将 BootSrvA 选项添加到现有的网络地址宏中。BootSrvA 的值应表示 tftboot 服务器。

上一个表中列出的宏名与必须从网络安装的客户机的供应商客户机类相匹配。这些名称是可能位于网络上的客户机的实例。关于确定客户机的供应商客户机类的信息,请参见System Administration Guide: IP Services》中的“Working With DHCP Options (Task Map)”

通过使用以下方法,您可以创建这些选项和宏。

写入使用 dhtadm 来创建选项和宏的脚本

通过改写实例 7–1 中的实例创建表 7–4 中列出的所有选项和某些有用的宏,您可以创建 Korn shell 脚本。请确保将引号括住的所有 IP 地址和值更改为适用于您的网络的正确的 IP 地址、服务器名和路径。您也应编辑 Vendor= 关键字以表示您具有的客户机类。使用 add_install_client -d 报告的信息,以获取改写脚本所需的数据。


实例 7–1 支持网络安装的脚本实例

# Load the Solaris vendor specific options. We'll start out supporting 
# the Sun-Blade-1000, Sun-Fire-880, and i86 platforms. Changing -A to -M would replace
# the current values, rather than add them.
dhtadm -A -s SrootOpt -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,1,ASCII,1,0'
dhtadm -A -s SrootIP4 -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,2,IP,1,1'
dhtadm -A -s SrootNM -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,3,ASCII,1,0'
dhtadm -A -s SrootPTH -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,4,ASCII,1,0'
dhtadm -A -s SswapIP4 -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,5,IP,1,0'
dhtadm -A -s SswapPTH -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,6,ASCII,1,0'
dhtadm -A -s SbootFIL -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,7,ASCII,1,0'
dhtadm -A -s Stz -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,8,ASCII,1,0'
dhtadm -A -s SbootRS -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,9,NUMBER,2,1'
dhtadm -A -s SinstIP4 -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,10,IP,1,1'
dhtadm -A -s SinstNM -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,11,ASCII,1,0'
dhtadm -A -s SinstPTH -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,12,ASCII,1,0'
dhtadm -A -s SsysidCF -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,13,ASCII,1,0'
dhtadm -A -s SjumpsCF -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,14,ASCII,1,0'
dhtadm -A -s Sterm -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,15,ASCII,1,0'
dhtadm -A -s SbootURI -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,16,ASCII,1,0'
dhtadm -A -s SHTTPproxy -d \
'Vendor=SUNW.Sun-Blade-1000 SUNW.Sun-Fire-880 SUNW.i86pc,17,ASCII,1,0'
# Load some useful Macro definitions.
# Define all Solaris-generic options under this macro named Solaris.
dhtadm -A -m Solaris -d \
':SrootIP4=10.21.0.2:SrootNM="blue2":SinstIP4=10.21.0.2:SinstNM="red5":'
# Define all sparc-platform specific options under this macro named sparc.
dhtadm -A -m sparc -d \
':SrootPTH="/export/sparc/root":SinstPTH="/export/sparc/install":'
# Define all sun4u architecture-specific options under this macro named sun4u. 
#  (Includes Solaris and sparc macros.)
dhtadm -A -m sun4u -d ':Include=Solaris:Include=sparc:'
# Solaris on IA32-platform-specific parameters are under this macro named i86pc.
dhtadm -A -m i86pc -d \
':Include=Solaris:SrootPTH="/export/i86pc/root":SinstPTH="/export/i86pc/install"\
:SbootFIL="/platform/i86pc/kernel/unix":'
# Solaris on IA32 machines are identified by the "SUNW.i86pc" class. All
# clients identifying themselves as members of this class will see these
# parameters in the macro called SUNW.i86pc, which includes the i86pc macro.
dhtadm -A -m SUNW.i86pc -d ':Include=i86pc:'
# Sun-Blade-1000 platforms identify themselves as part of the 
# "SUNW.Sun-Blade-1000" class.
# All clients identifying themselves as members of this class
#  will see these parameters.
dhtadm -A -m SUNW.Sun-Blade-1000 -d \
':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":\
Include=sun4u:'
# Sun-Fire-880 platforms identify themselves as part of the "SUNW.Sun-Fire-880" class.
# All clients identifying themselves as members of this class will see these parameters.
dhtadm -A -m SUNW.Sun-Fire-880 -d \
':SbootFIL="/platform/sun4u/kernel/sparcv9/unix":Include=sun4u:'
# Add our boot server IP to each of the network macros for our topology served by our
# DHCP server. Our boot server happens to be the same machine running our DHCP server.
dhtadm -M -m 10.20.64.64 -e BootSrvA=10.21.0.2
dhtadm -M -m 10.20.64.0 -e BootSrvA=10.21.0.2
dhtadm -M -m 10.20.64.128 -e BootSrvA=10.21.0.2
dhtadm -M -m 10.21.0.0 -e BootSrvA=10.21.0.2
dhtadm -M -m 10.22.0.0	-e BootSrvA=10.21.0.2
# Make sure we return host names to our clients.
dhtadm -M -m DHCP-servername -e Hostname=_NULL_VALUE_
# The client with this MAC address is a diskless client. Override the root settings
# which at the network scope setup for Install with our client's root directory.
dhtadm -A -m 0800201AC25E -d \
':SrootIP4=10.23.128.2:SrootNM="orange-svr-2":SrootPTH="/export/root/10.23.128.12":'

作为超级用户,请在批模式下执行 dhtadm。指定脚本名称以将选项和宏添加到您的 dhcptab 中。 例如,如果您的脚本名为 netinstalloptions,则请键入以下命令。


# dhtadm -B netinstalloptions

具有 Vendor= 字符串中列出的供应商客户机类的客户机现在可以使用 DHCP 在网络上进行安装。

关于如何使用 dhtadm 命令的详细信息,请参见 dhtadm(1M)。关于 dhcptab 文件的详细信息,请参见 dhcptab(4)

使用 DHCP Manager 来创建安装选项和宏

您可以使用 DHCP Manager 来创建表 7–4 中列出的选项和表 7–5 中列出的宏。

如何创建选项以支持 Solaris 安装 (DHCP Manager)

此过程假定您已经配置了您的 DHCP 服务器。如果您没有配置您的 DHCP 服务器,请参见System Administration Guide: IP Services》中的“Planning for DHCP Service (Task)”

  1. 成为 DHCP 服务器系统中的超级用户。

  2. 启动 DHCP Manager。


    # /usr/sadm/admin/bin/dhcpmgr &
    

    将显示“DHCP Manager”窗口。

  3. 在“DHCP Manager”中选择“选项”选项卡。

  4. 从“编辑”菜单中选择“创建”。

    “创建选项”对话框将打开。

  5. 为第一个选项键入选项名,然后为该选项键入相应的值。

    使用表 7–4 检查您必须创建的选项的选项名和值。请注意,供应商客户机类只是建议的值。您应当创建类,以表示需要从 DHCP 服务获取 Solaris 安装参数的实际客户机类型。关于如何确定客户机的供应商客户机类的信息,请参见System Administration Guide: IP Services》中的“Working With DHCP Options (Task Map)”

  6. 输入了所有值以后,请单击“确定”。

  7. 在“选项”选项卡中,选择您刚刚创建的选项。

  8. 从“编辑” 菜单中选择“复制”。

    “复制选项”对话框将打开。

  9. 键入另一个选项的名称,然后相应修改其它值。

    代码值、数据类型值、粒度值和最大值可能都需要修改。关于这些值,请参见表 7–4

  10. 重复步骤 7步骤 9,直到您创建了所有选项。

    您现在可以创建宏,以将选项传送给网络安装客户机(如以下过程中所述)。


    注意:

    您不需要将这些选项添加到 Solaris 客户机的 /etc/dhcp/inittab 文件中,因为此文件中已经包含了这些选项。


如何创建宏以支持 Solaris 安装 (DHCP Manager)

此过程假设您已经配置了您的 DHCP 服务器。如果您没有配置您的 DHCP 服务器,请参见System Administration Guide: IP Services》中的“Planning for DHCP Service (Task)”

  1. 在“DHCP Manager”中选择“宏”选项卡。

  2. 从“编辑”菜单中选择“创建”。

    “创建宏”对话框将打开。

  3. 键入宏的名称。

    关于您可以使用的宏名,请参见表 7–5

  4. 单击“选择”按钮。

    “选择选项”对话框将打开。

  5. 在“种类”列表中选择“供应商”。

    将列出您创建的供应商选项。

  6. 选择您要添加到宏的选项并单击“确定”。

  7. 为选项键入值。

    请参见表 7–4 以获得选项的值类型,并参考 add_install_client -d 报告的信息。

  8. 重复步骤 6步骤 7 以获得您要包含的各个选项。

    要包含其它宏,请键入 Include 作为选项名,并键入宏名作为选项值。

  9. 宏完成后,单击“确定”。

SPARC: 预先配置 Power Management 信息

您可以使用 Solaris 环境中提供的 Power Management 软件来自动保存系统的状态,并在其空闲 30 分钟后将其关闭。如果您是在符合 EPA 的能源之星原则版本 2 的系统(如 sun4u 系统)上安装 Solaris 9 软件,则缺省情况下会安装 Power Management 软件。在 Solaris Web Start 安装过程中,安装程序将提示您启用或禁用 Power Management 软件。suninstall 安装程序将提示您在安装完成并重新引导系统之后启用或禁用 Power Management 软件。


注意:

如果您的系统安装了能源之星版本 3 或更高版本,您不会被提示此信息。


如果您正在执行交互式安装,则无法预先配置 Power Management 信息并避免出现提示。但是,通过使用定制 JumpStart 安装,您可以预先配置 Power Management 信息,方法是使用结束脚本在系统上创建 /autoshutdown/noautoshutdown 文件。当系统重新引导时,/autoshutdown 文件将启用 Power Management,而 /noautoshutdown 文件将禁用 Power Management。

例如,结束脚本中的以下行将启用 Power Management 软件并防止在系统重新引导之后显示提示信息。

touch /a/autoshutdown

结束脚本在创建结束脚本中进行了说明。