JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 10 8/11 安装指南:定制 JumpStart 和高级安装     Oracle Solaris 10 8/11 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

第 1 部分使用定制 JumpStart

1.  在何处查找 Solaris 安装规划信息

2.  定制 JumpStart(概述)

3.  准备定制 JumpStart 安装(任务)

4.  使用可选的定制 JumpStart 功能(任务)

创建开始脚本

关于开始脚本的重要信息

用开始脚本创建派生配置文件

利用开始脚本和结束脚本跟踪安装持续时间

创建结束脚本

关于结束脚本的重要信息

使用结束脚本添加文件

使用结束脚本添加软件包或修补程序

使用结束脚本定制根环境

使用结束脚本的非交互安装

创建压缩的配置文件

创建压缩的配置文件

压缩的配置文件示例

创建磁盘配置文件

SPARC: 创建磁盘配置文件

SPARC: 磁盘配置文件示例

x86: 创建磁盘配置文件

x86: 磁盘配置文件示例

使用站点特定的安装程序

5.  创建定制规则和探测关键字(任务)

6.  执行定制 JumpStart 安装(任务)

7.  使用定制 JumpStart 进行安装(示例)

8.  定制 JumpStart(参考)

9.  使用 JumpStart 安装 ZFS 根池

第 2 部分附录

A.  故障排除(任务)

B.  附加 SVR4 打包要求(参考)

词汇表

索引

创建结束脚本

结束脚本是在 rules 文件中指定的用户定义的 Bourne shell 脚本。结束脚本可以在将 Solaris 软件安装到系统之后但在系统重新引导之前执行任务。只有在使用定制 JumpStart 安装 Solaris 时才可以使用结束脚本。

可以使用结束脚本执行的任务包括:

关于结束脚本的重要信息

使用结束脚本添加文件

通过结束脚本,可以将文件从 JumpStart 目录添加到已安装的系统。可以添加文件的原因在于,JumpStart 目录挂载在 SI_CONFIG_DIR 变量指定的目录中。缺省情况下,该目录设置为 /tmp/install_config


注 - 也可以替换文件,方法是将文件从 JumpStart 目录复制到已安装系统中已存在的文件。


  1. 将所有要添加到已安装系统的文件复制到 JumpStart 目录中。
  2. 对于希望复制到新安装的文件系统结构中的每个文件,在结束脚本中插入以下行:
    cp ${SI_CONFIG_DIR}/file_name /a/path_name

示例 4-4 使用结束脚本添加文件

例如,假设您有一个为站点上所有用户开发的特殊应用程序 site_prog。如果您将 site_prog 的副本放到 JumpStart 目录中,则结束脚本中的以下行会将 site_prog 从 JumpStart 目录复制到系统的 /usr/bin 目录中:

cp ${SI_CONFIG_DIR}/site_prog  /a/usr/bin

使用结束脚本添加软件包或修补程序

Solaris 软件在一个系统上安装完成之后,您可以创建一个结束脚本来自动添加软件包或修补程序。通过使用结束脚本添加软件包,可减少时间并确保安装在站点上不同系统中的软件包和修补程序的一致性。

在结束脚本中使用 pkgadd(1M)patchadd(1M) 命令时,请使用 -R 选项将 /a 指定为根路径。

示例 4-5 使用结束脚本添加软件包

  #!/bin/sh
 
  BASE=/a
  MNT=/a/mnt
  ADMIN_FILE=/a/tmp/admin
 
  mkdir ${MNT}
  mount -f nfs sherlock:/export/package ${MNT}
  cat >${ADMIN_FILE} <<DONT_ASK
  mail=root
  instance=overwrite
  partial=nocheck
  runlevel=nocheck
  idepend=nocheck
  rdepend=nocheck
  space=ask
  setuid=nocheck
  conflict=nocheck
  action=nocheck
  basedir=default
  DONT_ASK
 
  /usr/sbin/pkgadd -a ${ADMIN_FILE} -d ${MNT} -R ${BASE} SUNWxyz 
  umount ${MNT}
  rmdir ${MNT}

以下说明了用于此示例的一些命令。

示例 4-6 使用结束脚本添加修补程序

 #!/bin/sh 

########
#
# USER-CONFIGURABLE OPTIONS
#
########

# The location of the patches to add to the system after it's installed.
# The OS rev (5.x) and the architecture (`mach`) will be added to the
# root.  For example, /foo on a 8 SPARC would turn into /foo/5.8/sparc
LUPATCHHOST=ins3525-svr
LUPATCHPATHROOT=/export/solaris/patchdb
#########
#
# NO USER-SERVICEABLE PARTS PAST THIS POINT
#
#########

BASEDIR=/a

# Figure out the source and target OS versions
echo Determining OS revisions...
SRCREV=`uname -r`
echo Source $SRCREV

LUPATCHPATH=$LUPATCHPATHROOT/$SRCREV/`mach`

#
# Add the patches needed
#
echo Adding OS patches
mount $LUPATCHHOST:$LUPATCHPATH /mnt >/dev/null 2>&1
if [ $? = 0 ] ; then
    for patch in `cat /mnt/*Recommended/patch_order` ; do
        (cd /mnt/*Recommended/$patch ; echo yes | patchadd -u -d -R $BASEDIR .)
    done
    cd /tmp
    umount /mnt
else
    echo "No patches found"
if

注 - 以前,chroot(1M) 命令与结束脚本环境中的 pkgaddpatchadd 命令一起使用。在极少数情况下,一些软件包或修补程序无法与 -R 选项一起工作。在使用 chroot 命令前,必须在 /a 根路径中创建一个伪 /etc/mnttab 文件。

要创建伪 /etc/mnttab 文件,请将以下行添加到您的结束脚本中:

cp /etc/mnttab /a/etc/mnttab

使用结束脚本定制根环境

您还可以使用结束脚本来定制已经安装在系统上的文件。例如,示例 4-7 中的结束脚本通过将信息附加到根 (/) 目录中的 .cshrc 文件来定制根环境。

示例 4-7 使用结束脚本定制根环境

#!/bin/sh
#
# Customize root's environment
#
echo "***adding customizations in /.cshrc"
test -f a/.cshrc || {
cat >> a/.cshrc <<EOF
set history=100 savehist=200 filec ignoreeof prompt="\$user@`uname -n`> "
alias cp cp -i
alias mv mv -i
alias rm rm -i
alias ls ls -FC
alias h history
alias c clear
unset autologout
EOF
}

使用结束脚本的非交互安装

安装了 Oracle Solaris OS 后,可使用结束脚本来安装附加软件。Solaris 安装程序在安装过程中提示您输入信息。要使安装不受干扰,可以使用 -nodisplay-noconsole 选项来运行 Solaris 安装程序。

表 4-1 Solaris 安装选项

选项
说明
-nodisplay
运行安装程序,但没有图形用户界面。使用缺省产品安装,除非安装已被 -locales 选项修改。
-noconsole
运行安装,但没有任何交互式文本控制台设备。当与 -nodisplay 一起用于 UNIX 脚本时很有用。

有关更多信息,请参见手册页 installer(1M)