Software Distributor Administration Guide HP-UX 11i v1, 11i v2, and 11i v3 (5900-2561, March 2013)
11.1.1 Types of Control Scripts
Here are the control scripts that SD-UX supports:
• Checkinstall Script
This script is run by swinstall during its Analysis phase to insure that the installation (and
configuration) can be attempted. For example, the OS run state, running processes, or other
prerequisite conditions beyond dependencies could be checked. It should not change the state
of the system.
A checkinstall script’s chief merit is its ability to detect if the system contains a hardware
configuration that might lead to catastrophe - an unbootable system or file system corruption
- if the installation of the selected software was allowed to proceed. It also acts as the test for
conflicts with other software selections or with software already installed.
• Preinstall Script
This script is run by swinstall before loading the software files. For example, this script
could remove obsolete files, or move an existing file aside during an update.
A preinstall script is called during the Execution Phase of the swinstall command. The
preinstall script for each file is executed just before that fileset’s files are installed onto the
target system. A product level preinstall script is called before the filesets in the product.
Preinstall scripts for all kernel filesets and their prerequisites are all run before the kernel build
takes place. If the kernel build fails and swinstall exits, the preinstall scripts are removed
from the system. Product level preinstall scripts are invoked twice for all products that contain
kernel filesets: once when the kernel filesets are their prerequisites are installed; a second time
when the remaining filesets are installed.
• Postinstall Script
This script is run by swinstall after loading the software files. For example, this script could
move a default file into place.
The postinstall script is part of the Load phase of the swinstall command. After the files
are loaded, the fileset’s postinstall script is run. Then, the products’s postinstall script (if any)
is run.
• Unpreinstall Script
Unpreinstall scripts are executed during the load phase of swinstall if recovery is initiated.
All undo scripts are executed in the reverse order of the normal scripts. For each fileset being
recovered, the unpostinstall script is run, the fileset files are restored, and the unpreinstall script
is run. An undo script is executed if its corresponding script was executed.
An unpreinstall script should undo any operation that the preinstall script did. For example,
if the preinstall script moved a file, the unpreinstall script should move it back. If the preinstall
script copied a file, the unpreinstall script should remove it.
For a product to be recoverable, no files should be removed by preinstall or postinstall scripts.
Configure scripts are a good place to remove obsolete files.
A product unpreinstall script is run after the fileset unpreinstall scripts.
• Unpostinstall Script
Unpostinstall scripts are executed during the load phase of swinstall if recovery is initiated.
All undo scripts are executed in the reverse order of the normal scripts. An undo script is
executed if its corresponding script was executed.
An unpostinstall script should undo any operation that the postinstall script did. For example,
if the postinstall script moved a file, the unpostinstall script should move it back. If the postinstall
script copied a file, the unpostinstall script should remove it.
208 Using Control Scripts