使用 JumpStart 在 Oracle Solaris 11 Express 服务器上安装 Oracle Solaris 10

作者:Mary Ding

简介


本文介绍如何在 Oracle Solaris 11 Express 系统上搭建 JumpStart 安装服务器。

如果您能熟练使用 JumpStart 在联网的 SPARC 和 x86 平台上安装 Oracle Solaris 10 操作系统,那么就可能会了解 JumpStart 只能用于安装 Oracle Solaris 10 操作系统,无法用于安装 Oracle Solaris 11 Express 操作系统。不过,JumpStart 安装服务器可以是 Oracle Solaris 11 Express 系统。

您的 Oracle Solaris 11 Express 服务器可以完成两项不同的工作:

注意:本信息最初于 2010 年 5 月在 wikis.sun.com 上发布。

安装一个 Oracle Solaris 11 Express 系统作为 Oracle Solaris 10 JumpStart 服务器


下面的步骤介绍如何创建一个 Oracle Solaris 11 Express JumpStart 安装服务器,以便在客户端系统上安装 Oracle Solaris 10 操作系统。

  1. 在即将作为 JumpStart 安装服务器的机器上安装 Oracle Solaris 11 Express 2010.11 操作系统。

  2. 在即将作为 JumpStart 安装服务器的 Oracle Solaris 11 Express 机器上设置静态 IP 地址。

    有关如何设置静态 IP 地址的更多信息,请参见系统管理指南:网络接口和网络虚拟化如何配置 IP 接口中的说明以及 ipadm(1M) 手册页面。

  3. solaris 发布者安装 system/boot/network 程序包。

    $ pkg publisher
    PUBLISHER                             TYPE     STATUS   URI
    solaris                  (preferred)  origin   online   http://pkg.oracle.com
                                                            /solaris/release/
    # pkg install pkg:/system/boot/network
                   Packages to install:     1
               Create boot environment:    No
                   Services to restart:     1
    DOWNLOAD                                  PKGS       FILES    XFER (MB)
    Completed                                  1/1         5/5      0.0/0.0
    
    PHASE                                        ACTIONS
    Install Phase                                  25/25
    
    PHASE                                          ITEMS
    Package State Update Phase                       1/1
    Image State Update Phase                         2/2
  4. 下载最新的 Oracle Solaris 10 DVD 映像。

    这个映像中包括安装映像和 JumpStart 工具。不要忘记,JumpStart 只可用于安装 Oracle Solaris 10 操作系统,不可用于安装 Oracle Solaris 11 Express 操作系统。

  5. 使用 Oracle Solaris 10 DVD 映像和 setup_install_server(1M) 命令来搭建 JumpStart 安装服务器。

    以下示例使用了适用于 SPARC 的 Oracle Solaris 10 9/10 DVD 映像。

    # /media/SOL_10_0910_SPARC/Solaris_10/Tools/setup_install_server 
      /export/s10u9_sparc
    Verifying target directory...
    Calculating the required disk space for the Solaris_10 product
    Calculating space required for the installation boot image
    Copying the CD image to disk...
    Copying Install Boot Image hierarchy...
    Copying /boot netboot hierarchy...
    Install Server setup complete
  6. jumpstart_sample 从 DVD 映像复制到 JumpStart 的配置文件位置。

    # cd /media/SOL_10_0910_SPARC/Solaris_10/Misc/jumpstart_sample
    # mkdir -p /export/profiles/s10profile
    # cp -pr * /export/profiles/s10profile
    
  7. 执行 rm_install_client 脚本问题中介绍的解决方法。

  8. 执行 check 脚本问题中介绍的解决方法。

  9. 运行带有 -p s10-image 选项的 check(1M) 命令,验证您的 JumpStart 配置文件。

    在下面的示例中,为简洁起见省略了许多输出行。请注意,-p 选项并不适用于所有 racle Solaris 10 更新版本。确保您使用的是 racle Solaris 10 Update 7 或更高版本。(参考 CR 6728067。)

    # cd /export/profile/s10profile
    # ./check -p /export/s10u9_sparc
    45 blocks
    Validating rules...
    Validating profile host_class...
    Validating profile zfsrootsimple...
    Validating profile net924_sun4c...
    Validating profile upgrade...
    Validating profile x86-class...
    Validating profile any_machine...
    The custom JumpStart configuration is ok.
  10. 确保 udp6 可用并处于联机状态。

    $ svcs -a | grep "network/tftp/udp6"
    
    

    如果此命令未显示任何输出,则表明 udp6 不可用。执行 tftp/udp6 服务问题中介绍的解决方法。

  11. 运行 add_install_client(1M) 安装客户端。

    # /export/s10u9_sparc/Solaris_10/Tools/add_install_client -e 8:0:20:fd:f2:18 \
    -c line2-x4100:/export/profiles/s10profile \
    -p line2-x4100:/export/profiles/s10profile line2-t1 sun4u
    Adding Ethernet number for line2-t1.sfbay.sun.com to /etc/ethers
    making /tftpboot
    enabling network/rarp service
    enabling network/rpc/bootparams service
    updating /etc/bootparams
    copying boot file to /tftpboot/inetboot.SUN4U.Solaris_10-1

已知问题的解决方法


rm_install_client
脚本问题


CR 6646677: The rm_install_client script does not work with Solaris 
10 dig based nslookup.

要解决此问题,请在 Oracle Solaris 10 网络映像的 rm_install_client 脚本中作出以下更改。例如,如果您已在 /export/s10u9/dvds/latest 中设置 Oracle Solaris 10 网络映像,请在 /export/s10u9/dvds/latest/Solaris_10/Tools/rm_install_clientrm_install_client 脚本中作出以下更改:

将第 168 行从:

ANS=`nslookup ${K} 2>&1`

更改为:

ANS=`nslookup ${K} | /bin/sed '/^;;/d' 2>&1`

将第 273 行从:

ANS=`echo $ANS | sed -e 's/#.*$//'`

更改为:

ANS=`echo $ANS | sed -e 's/ #.*$//'`

check 脚本问题


CR 6838095: Oracle Solaris 11 Express JumpStart server doesn't run the 
check script correctly.

要解决此问题,请将 JumpStart 配置文件目录 /export/profile/s10profile 中的 check 脚本更改为使用 /usr/has/bin/sh。使用以下行替换 check 脚本的第一行:

#!/usr/has/bin/sh

tftp/udp6 服务问题


CR 6953599: /var/svc/manifest/network/tftp-udp6.xml should be delivered 
as part of service/network/tftp.

确保 tftp/udp6 可用并处于联机状态。

$ svcs -a | grep "network/tftp/udp6"

如果此命令未显示任何输出,则表明 tftp/udp6 不可用。要解决此问题,请执行以下步骤:

  1. 将以下行附加到 /etc/inetd.conf 文件的最后一行:

    tftp  dgram  udp6  wait  root  /usr/sbin/in.tftpd  in.tftpd -s /tft pboot
    
    
  2. 运行 inetconv -i/etc/inetd.conf 转换为 XML。

    # inetconv -i /etc/inet/inetd.conf
    tftp -> /var/svc/manifest/network/tftp-udp6.xml
    Importing tftp-udp6.xml ...Done
    $ svcs -a | grep udp6
    online           19:35:08 svc:/network/tftp/udp6:default
    

总结


本文介绍了如何在 Oracle Solaris 11 Express 系统上搭建 JumpStart 安装服务器。随后,Oracle Solaris 11 Express 系统即可用于使用 JumpStart 来安装 Oracle Solaris 10 操作系统的客户端。