SmartSetup Scripting Toolkit Deployment Guide for HP Integrity Servers with Microsoft Windows Server 2003 for Itanium-based Systems
Table Of Contents
- SmartSetup Scripting Toolkit Deployment Guide
- Table of Contents
- About This Document
- 1 Overview
- 2 Creating a server profile
- 3 Setting up the toolkit environment
- 4 Setting up the boot mechanism
- Using a bootable CD/DVD
- Using a USB flash device
- Using network boot
- Interrupting the SSTK deployment process
- 5 Utilities Reference
(as described in the previous section). This section describes how the windows-setup.sh copies
and installs all available drivers from the OEM folder and unattended file. You can generalize
from this example to any other OEM driver. Here is the portion of the script that installs the
driver:
echo "Copying OEM and unattended file"
# Copying OEM folder and unattended file mkdir -p $MSDATA/\$win_nt\$.~ls/\$OEM\$
if [ ! -e ${unattendfile} ]; then
write_error "Unattended file not found: ${unattendfile}"
exit 1
fi
cp ${unattendfile} $MSDATA/\$win_nt\$.~ls/ia64/winnt.sif
if [ -d $softwarefolder ]; then
MSDATA_INSTALLERS_FOLDER=$MSDATA/Installers
mkdir -p $MSDATA_INSTALLERS_FOLDER
find ${softwarefolder} -mindepth 1 -maxdepth 1 -exec cp -R {} $MSDATA_INSTALLERS_FOLDER \; fi
# Install all available drivers
write_action "Copying drivers"
drivers_oemfolder="${DATADIR}/drivers/*/*/windows/${OSDIR}/"
for i in $drivers_oemfolder; do
if [ -d $i ]; then
find $i/other-files/\$OEM\$/ -mindepth 1 -maxdepth 1 -exec cp -R {} $MSDATA/\$win_nt\$.~ls/\$OEM\$ \;
fi
done
The script depends on the environment variable DATADIR, the data directory of the repository,
set by main_toolkit_launch.sh, and MSDATA, the mount point of the MSDATA partition,
set by windows-setup.sh. These variables do not need to be changed if the repository structure
is retained.
For the boot controllers, SSTK appends the unattended.txt content to the winnt.sif file:
controller=""
# The list of the available controller is at the
# following directory ${DATADIR}/drivers/storage/
if [ "${BOOTCONTROLLER}" == "${SM_PX00}" ]; then
controller="saP600"
elif [ "${BOOTCONTROLLER}" == "${EMULEX}" ]; then
controller="emulex"
elif [ "${BOOTCONTROLLER}" == "${SM_64XX}" ]; then
controller="sa6400"
elif [ "${BOOTCONTROLLER}" == "${SM_53XX}" ]; then
controller="sa6400"
elif [ "${BOOTCONTROLLER}" == "${LOCAL}" ]; then
controller=""
elif [ "${BOOTCONTROLLER}" == "${QLOGIC4G}" ]; then
controller="qlogic4g"
fi
if [ -n "${controller}" ]; then
find
${DATADIR}/drivers/storage/${controller}/windows/${OSDIR}/boot-files/\$OEM\$
-mindepth 1 -maxdepth 1 -exec cp -R {}
# cp -R
${DATADIR}/drivers/storage/${controller}/windows/${OSDIR}/boot-files/\$OEM\$/*
${MSDATA}/\$win_nt\$.~ls/\$OEM
if [ -e
${DATADIR}/drivers/storage/${controller}/windows/${OSDIR}/unattended.txt
]; then
cat
${DATADIR}/drivers/storage/${controller}/windows/${OSDIR}/unattended.txt
| grep -v Unattended | grep -v OemPnPDri
else
write_warning "Could not found a retail driver for selected
controller. Windows Setup may fail if Windows does not ha
fi
fi
This unattended file is placed in the repository as follows:
\data_files\drivers\storage\<io_card>\<windows>\<os version>;
30 Creating a server profile