swinstall(1M) — Hewlett-Packard Company
swcopy(1M)
NAME
swinstall − Install and configure software products
swcopy − Copy software products for subsequent installation or distribution
SYNOPSIS
swinstall [XToolkit Options] [-i] [-p] [-v] [-r] [-s source] [-x option=value] [-X option_file]
[-f software_file] [-t target_file] [-C session_file] [-S session_file] [-Q date] [-J jobid]
[software_selections] [ @ target_selections]
swcopy [XToolkit Options] [-i] [-p] [-v] [-s source] [-x option=value] [-X option_file]
[-f software_file] [-t target_file] [-C session_file] [-S session_file] [-Q date] [-J jobid]
[software_selections] [ @ target_selections]
Remarks:
SD-UX commands are included with the HP-UX Operating System and manage software on the local host only. To install and manage software simultaneously on multiple remote hosts (including PCs) from a central controller, you must purchase the HP OpenView Software Distributor (HP Prod. No. B1996AA) which provides extended software management, multi-site software distribution capabilities and distribution to PCs. While most of the information in this manual page applies to both SD-UX commands and the OpenView product, some applies only to the OpenView product. Where this is the case, you will see:
The following xxx applies only to HP OpenView Software Distributor
DESCRIPTION
The swinstall command installs the software_selections from a software source to either the local host or, in the case of the HP OpenView Software Distributor product, to one or more target_selections (root filesystems). By default, the software is configured for use on the target after it is installed. (The software is not configured when installed into an alternate root directory.)
The SD swcluster command is used when installing software to an HP-UX NFS (Network File System) diskless cluster. See the NFS Diskless Concepts and Administration whitepaper (found in /usr/share/doc) and the swcluster(1) manpage for more information on network file system concepts and installing to diskless servers.
The swcopy command copies or merges software_selections from a software source to one or more target_selections (software depots). These depots can then be accessed as a software source by the swinstall command.
The following paragraph applies only to HP OpenView Software Distributor
For PC software installation, the swinstall command first copies or merges software_selections from a software source to one or more PC target_selections (PC Controllers). Each PC Controller is a fanout server, providing the software_selections (copied to it) to PC targets. At each PC target an SD PC agent process performs the actual installation.
The key difference between swinstall and swcopy is that swinstall installs software for actual (or eventual) use, while swcopy copies software into a depot, making it then available as a source for installation by swinstall.
NOTE: To copy to a tape, see the swpackage(1M) manpage.
Other features (differences) include:
• The swinstall command executes several vendor-supplied scripts during the installation and configuration of the software_selections. The swcopy command does not execute these scripts. The swinstall command supports the following scripts:
checkinstall
a script executed during the analysis of a target_selection, it checks that the installation can be attempted. If this check fails, the software product will not be installed.
preinstall
a script executed immediately before the software’s files are installed.
postinstall
a script executed immediately after the software’s files are installed.
configure
a script executed during the configuration of a target_selection, it configures the target for the software (and the software for the target). The preinstall and postinstall scripts are not intended to be used for configuration tasks. They are to be used for simple file management needs such as removing obsolete files from the previous revision (which was just updated).
unpreinstall
a script executed immediately after the software’s actual files are restored if the software install will fail and the autorecover_product option is set to true. The script undoes the steps performed by preinstall script.
unpostinstall
a script executed immediately before the software’s actual files are restored if the software install failed and the autorecover_product option is set to true. The script undoes the steps performed by postinstall script.
• When a depot is created or modified using swcopy, catalog files are built that describe the depot (as opposed to the Installed Products Database (IPD) files that are built by the swinstall command).
• By default, the swinstall command only allows the selection of compatible software from the source. This constraint ensures that the architecture of the software matches that of the target_selections. No compatibility checks are performed by the swcopy command, unless explicitly requested by the user. (A depot can be a repository of software targeted for a variety of architectures and operating systems.)
• By default, swinstall supports updates to higher revisions of software. If a software_selection of the same revision is already installed, swinstall will not reinstall it. If a software_selection has a lower revision than the same software which is already installed, swinstall will not reinstall it. (The user can override these behaviors with control options.)
• The swinstall command creates hard links and symbolic links as specified for the software. If it encounters a symbolic link where it expected a regular file, swinstall follows the symbolic link and updates the file to which it points.
• The swinstall command does not remove a product’s current files before installing the new ones. A fileset’s install scripts can perform this operation (if necessary). Files being replaced are overwritten where possible, or they are temporarily saved (to #<file> ) if the autorecover_product option is set to true; those that can not be overwritten are moved aside (to #<file> ).
• The swinstall command supports kernel building scripts and rebooting. Before or after software which modifies the kernel is installed (or updated), swinstall will execute system-specific scripts to prepare for or build the new version of the kernel. The remaining software_selections are then installed. These scripts are defined in swagent options and include: install_setup_cmd, system_prep_cmd, kernel_build_cmd, and install_cleanup_cmd.
After software which requires a system reboot is installed (or updated), swinstall will automatically reboot the system. The reboot command is defined by the swagent option: reboot_cmd.
When updating the operating system to a new revision, installing kernel software first ensures that a new kernel can be generated before the rest of the operating system is updated. After all the software_selections are updated (or installed), swinstall reboots using the new kernel, then executes the configure scripts for each software_selection. After these scripts complete, it reboots the system again to restore it to its normal state.
• No kernel building or system reboots are performed by swcopy.
• Both the swinstall and swcopy commands perform various checks prior to installing/copying the software_selections, for example disc space analysis.
Options
swinstall and swcopy support the following options:
XToolKit Options
The swinstall and swcopy commands support a subset of the standard X Toolkit options to control the appearance of the GUI. The supported options are: -bg, -background, -fg, -foreground, -display, -name, -xrm, and -synchronous. See the X(1) manual page for a definition of these options.
-p Previews an install task by running the session through the analysis phase only.
-i Runs the command in interactive mode (invokes the Graphical User Interface). [Note: The Graphical User Interface is not supported on SunOS]. The SD-UX swinstall, swcopy, and swremove commands also support an interactive terminal user interface (text based) in which screen navigation is done with the keyboard (no mouse).
-l Runs the command in linkinstall mode which makes software installed under a server’s shared root available to a diskless client’s private root.
When run in the linkinstall mode, swinstall:
• Creates NFS mounts to the software to make it accessible from the target. This may involve delayed mounting for alternate roots.
• Modifies the target’s fstab file.
• Modifies the source’s exports file to add mount permission for the target.
Mounts are created by examining the share_link product attribute. Not all products support linkinstall. Some products may be visible without creating a new mount if they reside under an old one.
The -l option is used by the swcluster command in installing to diskless clusters.
-r Causes swinstall to install software into alternate root directories (e.g. root filesystems other than /). As of HP-UX release 10.2*, -r is optional but is allowed to maintain compatibility with previous versions.
-v Turns on verbose output to stdout. (The swinstall or swcopy logfile is not affected by this option.) Verbose output is enabled by default, see the verbose option below.
-s source Specifies the source depot (or tape) from which software will be installed or copied. The default source type is directory.
-x option=value Set the session option to value and override the default value (or a value in an alternate option_file specified with the -X option). Multiple -x options can be specified.
-X option_file Read the session options and behaviors from option_file.
-f software_file Read the list of software_selections from software_file instead of (or in addition to) the command line.
-t target_file Read the list of target_selections from target_file instead of (or in addition to) the command line. Installing to multiple remote targets is available only via the HP OpenView Software Distributor product (HP Prod. No. B1996AA) which provides extended software management plus multi-site software distribution capabilities.
-C session_file Save the current options and operands to session_file. You can enter a relative or absolute path with the file name. The default directory for session files is /.sw/sessions/. You can recall a session file with the -S option.
-S session_file Execute swinstall or swcopy based on the options and operands saved from a previous session, as defined in session_file. You can save session information from a command-line session with the -C session_file option.
The -Q and -J options apply only to HP OpenView Software Distributor
-Q date Schedules the job for this date. The date’s format can be changed by modifying the file /var/adm/sw/getdate.templ.
-J jobid Executes the previously scheduled job. This is the syntax used by the daemon to start the job.
Operands
The swinstall and swcopy commands support the following syntax for each software_selection:
bundle[.product[.subproduct][.fileset]][,version]
or
product[.subproduct][.fileset][,version]
The version component has the form:
[,r <op> revision][,a <op> arch][,v <op> vendor][,c <op> category]
or
[instance_id]
where <op> can be: *, ==, >=, <=, <, >, or != which performs individual comparisons on dot-separated fields. For example, r>=B.10.00 means choose all revisions that are greater than or equal to B.10.00. The system will compare each dot-separated field to find matches. Software will only be selected when matches within each field are satisfied. Wildcards are not allowed with these operators.
The = (equals) relational operator is also allowed to specify a particular version component.
All version components are repeatable within a single specification (e.g. r>=A.12, r<A.20). If multiple components are used, the selection must match all components. No isspace(3) characters are allowed.
The \* software specification selects all products.
For complete information, see the sd(4) manual page.
The swinstall and swcopy commands support the following syntax for each target_selection. The : (colon) is required if both a host and directory are specified.
[host][:][/directory]
For linkinstall, if the [directory] part of the selection is a relative path, then the value of default.shared_root=true is pre-pended for sources and the value of default.private_root=true is pre-pended for targets.
These are normally /export/shared_roots and /export/private_roots, respectively.
PC Targets
The following applies only to HP OpenView Software Distributor
Additionally, the swcopy command supports the syntax:
[pc_controller]
and the swinstall command supports the syntax:
[pc_controller][::][pc_target]
This syntax applies only to PCs. The PC Controller is a fanout server. The PC target may be a PC machine, user, or group name. Valid targets for a PC Controller can be listed using swlist -l machine|user|group. PC targets can be further qualified for whether they refer to a PC machine, user, or group type with the following syntax:
name[,t=type][,k=address]
The type only needs to be specified if a name applies to both (more than one) of a machine, user, or group. (The address is used internally for machines and is generally not needed on the command line.) The keyword * can be substituted for pc_targets, specifying an installation to all target machines:
@ pc_controller::*
EXTERNAL INFLUENCES
Defaults File
In addition to the standard options, several swinstall and swcopy behaviors and policy options can be changed by editing the default values found in:
/var/adm/sw/defaults - the system-wide default values,
$HOME/.sw/defaults - the user-specific default values.
Values must be specified in the defaults file using this syntax:
swinstall.option=value
swcopy.option=value
The default values can be overridden by specifying an options file with the -X option, or by specifying -x option=value on the command line. The policy options that apply to swinstall and swcopy are:
agent_auto_exit=true
Causes the target agent to automatically exit after Execute phase, or after a failed Analysis phase. This is forced to false when the controller is using an interactive UI, or when -p (preview) is used. This enhances network reliability and performance. The default is true - the target agent will automatically exit when appropriate. If set to false, the target agent will not exit until the controller ends the session.
agent_timeout_minutes=1440
Causes a target agent to exit if it has been inactive for the specified time. The default of 1440 (24 hours) applies only when the interactive UI is used. Usually, the command line controller resets this to 10 minutes. If you change this value to anything other than 1440, that value will be used even if the controller is using an interactive UI. When using command line invocation of HP OpenView Software Distributor with multiple targets and you have not changed this value from 1440, the value will be reset to 9 minutes plus the number of targets.
allow_downdate=false
Applies only to swinstall. Prevents the installation of an older revision of fileset that already exists at the target(s). (Many software products do not support "downdating".) If set to true, the older revision can be installed.
allow_incompatible=false
Applies only to swinstall. Requires that the software products which are being installed be "compatible" with the target selections. (All of the target selections must match the list of supported systems defined for each selected product.) If set to true, target compatibility is not enforced.
allow_multiple_versions=false
Applies only to swinstall. Prevents the installation of another, independent version of a product when a version already is already installed at the target.
If set to true, another version of an existing product can be installed into a new location. Multiple versions can only be installed if a product is locatable. Multiple configured versions will not work unless the product supports it.
autoreboot=false
Applies only to swinstall. Prevents the installation of software requiring a reboot from the non-interactive interface. If set to true, then this software can be installed and the target system(s) will be automatically rebooted.
An interactive session always asks for confirmation before software requiring a reboot is installed.
autorecover_product=false
Applies only to swinstall. Causes swinstall to remove the original files as they are updated. If an error occurs during the installation (e.g. network failure), then the original files are lost, and the installation must be re-tried.
If set to true, all files are saved as backup copies until all filesets in the current product loading are complete; then they are removed. At the cost of a temporary increase in disk space and slower performance, this allows for automatic recovery of of the original filesets in that product if the load fails.
The following option applies only to HP OpenView Software Distributor
autoremove_job=false
Controls automatic job removal of completed jobs. If the job is automatically removed, job information (job status or target logfiles) cannot be queried with swjob.
Install jobs to PCs can not be automatically removed. They should not be removed until the job completes on all PC targets.
autoselect_dependencies=true
Automatically select dependencies when software is being selected. When set to true, and any software which has dependencies is selected for install, swinstall or swcopy makes sure that the dependencies are met. If they are not already met, they are automatically selected for you. If set to false, automatic selections are not made to resolve requisites.
autoselect_reference_bundles=true
If true, bundles that are sticky will be automatically installed, or copied, along with the software it is made up of. If false, the software can be installed, or copied, without automatically including sticky bundles that contain it.
codeword=
Provides the "codeword" needed to unlock protected HP CD-ROM software.
Some HP software products are shipped on CD-ROM as "protected" products. That is, they cannot be installed or copied unless a "codeword" and "customer ID" are provided. The codeword is found on the CD-ROM certificate which you received from HP. You may use this default specification on the command line or the SD-UX Interactive User Interface to enter the codeword.
This default stores the codeword for future reference; it needs to be entered only once. If a new HP product is purchased and a previous codeword has already been entered for that CD-ROM, just enter the new codeword as usual and the codewords will be merged internally.
NOTE: For HP-UX B.10.10 and later systems, SD searches the .codewords file on the server that is providing protected software to other hosts. It looks for valid customer_id/codeword pairs. In doing so, SD eliminates the need to enter codewords and customer_ids on every host that is "pulling" the software.
To properly store the customer_id/codeword for a CD-ROM, run swinstall -p or swcopy -p on the host serving the CD-ROM. After the codeword has been stored, clients installing or copying software using that host and CD-ROM as a source will no longer require a codeword or customer_id.
customer_ID=
This number, also printed on the Software Certificate, is used to "unlock" protected software and restrict its installation to a specific site or owner. It is entered using the -x customer_id= option or by using the Interactive User Interface. The customer_ID can be used on any HP-UX 10.0X compatible HP9000 system.
create_target_path=true
Causes the agent to create the target directory if it does not already exist. If set to false, a new target directory will not be created. This option can prevent the erroneous creation of new target depots or new alternate root directories.
compress_cmd=/usr/contrib/bin/gzip
Defines the command called by the source agent to compress files before transmission. If the compression_type is set to other than gzip or compress, this path must be changed.
compress_files=false
If set to true, files are compressed, if not already compressed, before transfer from a source. This will enhance performance on slower networks for swinstall and swcopy, and will result in smaller depots for swcopy, unless the uncompress_files is also set to true.
compression_type=gzip
Defines the default compression_type used by the agent (or set by swpackage ) when it compresses files during or after transmission. If uncompress_files is set to "false," the compression_type is recorded for each file compressed so that the correct uncompression can later be applied during a swinstall, or a swcopy with uncompress_files set to "true."
NOTE: MAKE SURE THE COMPRESSION_TYPE VALUES ARE SYNCHRONIZED BETWEEN THE SOURCE AND TARGET MACHINES. Compression_type options on the source and target systems must be able to compress and uncompress files appropriately.
The compress_cmd specified must produce files with the compression_type specified. The uncompress_cmd must be able to process files of the compression_type specified unless the format is gzip which is uncompressed by the internal uncompressor ( funzip). To use gzip you must load the SW-DIST.GZIP fileset. If the SW-DIST.GZIP fileset (which is optional freeware) is loaded, then you may set the compression options to: compress_cmd=/usr/contrib/bin/gzip
uncompress_cmd= or
compression_type=gzip
defer_configure=false
Applies only to swinstall. Causes swinstall to automatically configure the software_selections after they are installed. When an alternate root directory is specified, swinstall never performs the configuration task, since only hosts using the software should be configured. If set to true, this option allows configuration to be deferred even when the root directory is /.
When installing a second (third, ...) version of a product, it will not be configured if another version is already configured. The swconfig command must be run separately.
enforce_dependencies=true
Requires that all dependencies specified by the software_selections be resolved either in the specified source, or at the target_selections themselves.
The swinstall and swcopy commands will not proceed unless the dependencies have also been selected or already exist at the target in the correct state (INSTALLED or AVAILABLE). This prevents unusable software from being installed on the system. It also ensures that depots contain usable sets of software.
If set to false, dependencies will still be checked, but not enforced. Corequisite dependencies, if not enforced, may keep the selected software from working properly. Prerequisite dependencies, if not enforced, may cause the installation or configuration to fail.
enforce_dsa=true
Prevents the command from proceeding past the analysis phase if the disk space required is beyond the available free space of the impacted filesystem(s). If set to false, then the install or copy operation will use the filesystems’ minfree space and may fail because it reaches the filesystem’s absolute limit.
enforce_kernbld_failure = true
Applies only to swinstall. Prevents swinstall from proceeding past the kernel build phase if the kernel build processes fail. If set to false, then the install operation will continue (without suspension if in the interactive mode) despite failure or warnings from either the system preparation process or the kernel build process.
enforce_scripts=true
Applies only to swinstall. By default, if a fileset checkinstall script fails (i.e. returns with an exit code 1), that fileset will not be installed. If a product checkinstall script fails, no filesets in that product will be installed. If set to false, the install will proceed even if a checkinstall script fails.
The following job_ options apply only to HP OpenView Software Distributor
job_polling_interval=30
Applies only to swinstall. Defines the polling interval, in minutes, used by the daemon. It specifies how often a PC install job will be polled in order to cache the progress of remote targets on the controller.
job_title =
This is an ASCII string giving a title to a job. It is displayed along with the job ID to provide additional identifying information about a job when swjob is invoked. The default value is to have no title. If a title is specified, it should be enclosed in quotes.
logdetail=false[true]
The SD loglevel and logdetail options allow you to choose what amount of information you need in your logfiles - from no detail to complete information.
The loglevel=0 option allows no information to be written to the logfile. This essentially turns off the logfile process.
The logdetail=true[false] option controls the amount of detail written to the logfile. Here are the possible combinations of loglevel and logdetail options:
| Log Level | Log Detail | Information Included |
| loglevel=0 | No information is written to the logfile. |
|
| loglevel=1 | logdetail=false | Only POSIX events are logged; this is the default. |
| loglevel=1 | logdetail=true | POSIX detail as above plus task progress messages. Setting loglevel=1 is not necessary, it is the default. |
| loglevel=2 | logdetail=false | POSIX and file level messages only. Setting the logdetail=false option is not necessary. |
| loglevel=2 | logdetail=true | All information is logged. Setting both loglevel=2 and logdetail=true options is required. With this combination you may get the same logfile behavior as previous HP-UX 10.x releases. |
logfile=/var/adm/sw/sw<task>.log
This is the default command log file for the swinstall and swcopy commands. For swinstall, the default value is /var/adm/sw/swinstall.log. For swcopy, the default value is /var/adm/sw/swcopy.log.
loglevel=1
Controls the log level for the events logged to the command logfile, and the target agent logfile. A value of 0 provides no information to the logfile. A value of 1 enables verbose logging to the logfiles. A value of 2 enables very verbose logging to the logfiles.
log_mesgid=0
Controls whether numeric identification numbers are prepended to logfile messages produced by SD. A value of 0 (default) indicates no such identifiers are attached. Values of 1-4 indicate that identifiers are attached to messages:
• 1 applies to ERROR messages only
• 2 applies to ERROR and WARNING messages
• 3 applies to ERROR, WARNING, and NOTE messages
• 4 applies to ERROR, WARNING, NOTE, and certain other logfile messages.
layout_version=1.0
The object and attribute syntax of SD now conforms to the layout_version of 1.0 from the IEEE POSIX 1387.2 Software Administration standard. This options controls to which layout_version the SD commands write distributions and swlist output.
Supported values are 0.8 and 1.0. The value of 1.0 should be used for future compatibility; the SD commands still accept the old keyword names as well as the new ones. The value of 0.8 should only be used to create distributions readable by older versions of SD.
match_target=false
Applies only to swinstall. If set to true, other software selections are ignored and software selection is done by locating filesets on the source that match the target system’s installed filesets. If multiple targets are specified, the first in the list is used as the basis for selections.
mount_all_filesystems=true
Attempt to mount all filesystems in the /etc/fstab file at the beginning of the analysis phase, to ensure that all listed filesystems are mounted before proceeding. This policy helps to ensure that files are not loaded into a directory that may be below a future mount point.
If set to false, the mount operation is not attempted, and no check of the current mounts is performed.
polling_interval=2
Defines the polling interval, in seconds, used by the interactive GUI or TUI of the controller. It specifies how often each target agent will be polled to obtain status information about the task being performed. When operating across wide-area networks, the polling interval can be increased to reduce network overhead.
register_new_depot=true
Applies only to swcopy. Causes swcopy to register a newly created depot with the local swagentd. This action allows other SD commands to automatically "see" this depot. If set to false, a new depot will not be automatically registered. (It can be registered later with the swreg command.)
register_new_root=true
Applies only to swinstall. Causes alternate roots to be registered during swinstall. These can be listed with swlist.
reinstall=false
When re-installing (or re-copying) an existing revision of a fileset, this option causes that fileset to be skipped, i.e. not re-installed. If set to true, the fileset will be re-installed (re-copied).
reinstall_files=true
Causes all the files in a fileset to always be reinstalled or recopied, even when the file already exists at the target and is identical to the new file. If set to false, files that have the same checksum (see next option), size and timestamp will not be re-installed. This check enhances performance on slow networks or slow discs.
reinstall_files_use_cksum=true
This option affects the operation when the reinstall_files option is set to false. It causes the checksums of the new and old file to be computed and compared to determine if the new file should replace the old one. (The checksum is slower, but is a more robust way to check for files being equivalent.) If set to false, the checksums are not computed, and files are (not) reinstalled based only on their size and timestamp.
retry_rpc=0
For HP OpenView Software Distributor retry_rpc=1. Defines the number of times a lost source connection will be retried during file transfers in swinstall or swcopy. A lost connection is one that has timed out. When used in conjunction with the rpc_timeout option, the success of installing over slow or busy networks can be increased. If set to zero, then any rpc_timeout to the source will cause the task to abort. If set from 1 to 9, then the install of each fileset will be attempted that number of times. The reinstall_files option should also be set to false to avoid installing files within the fileset that were successfully installed.
rpc_binding_info=ncadg_ip_udp:[2121]
Defines the protocol sequence and endpoint which will be used to contact swagentd. HP-UX supports both the udp (ncadg_ip_udp:[2121] and tcp (ncacn_ip_tcp:[2121] protocol sequence/endpoint. This value should be consistent among all hosts that work together. See sd(5) for details on specifying this option.
rpc_timeout=7
For HP OpenView Software Distributor rpc_timeout=5. Relative length of the communications timeout. This is a value in the range from 0 to 9 and is interpreted by the DCE RPC. Higher values mean longer times; you may need a higher value for a slow or busy network. Lower values will give faster recognition on attempts to contact hosts that are not up, or are not running the swagentd. Each value is approximately twice as long as the preceding value. A value of 5 is about 30 seconds for ncadg_ip_udp.
select_local=true
If no target_selections are specified, select the default root directory / (swinstall), or the default target_directory (swcopy), at the local host as the target of the command.
software=
Defines the default software_selections. There is no supplied default. If there is more than software selection, they must be separated by spaces.
software_view=all_bundles
For HP OpenView Software Distributor, the default is products. Indicates the software view to be used by the SD-UX interactive interface of the commands. It can be set to products, all_bundles, or a bundle category tag (to indicate to show only bundles of that category). The default software view (bundles) will also show top level software (products and bundles).
source_cdrom=/SD_CDROM
Defines the default location of the source CD-ROM. This syntax can be host:path.
source_directory=/var/spool/sw
Defines the default location of the source depot. This syntax can be host:path. The -s option overrides this value.
source_tape=/dev/rmt/0m
Defines the default location of the source tape, usually the character-special file of a local tape device. If the host:path syntax is used, the host must match the local host. The -s option overrides this value.
source_type=directory
Defines the default source type: cdrom, directory, or tape. The source type derived from the -s option overrides this value.
target_directory=/var/spool/sw
Applies only to swcopy. Defines the default location of the target depot.
targets= Defines the default target_selections. There is no supplied default (see select_local above). If there is more than target selection, they must be separated by spaces.
uncompress_files=false
Applies only to swcopy. If the files being transferred from a source are compressed, setting this option will uncompress the files before storing them on the target depot.
use_alternate_source=false
Empowers each target agent to use its own, configured alternate source, instead of the one specified by the user. If false, each target agent will use the same source, namely the source specified by the user and validated by the command. If true, each target agent will instead use its own configured value for the source.
verbose=1
Controls the verbosity of the swinstall or swcopy output (stdout). A value of 0 disables output to stdout. (Error and warning messages are always written to stderr). A value of 1 enables verbose messaging to stdout.
write_remote_files=false
Prevents the installation or copying of files to a target which exists on a remote (NFS) filesystem. All files destined for a remote filesystem will be skipped.
If set to true and if the superuser has write permission on the remote filesystem, the remote files will not be skipped, but will be installed or copied.
Session File
Each invocation of the swinstall or swcopy command defines an installation or copy session. The invocation options, source information, software selections, and target hosts are saved before the installation or copy task actually commences. This lets you re-execute the command even if the session ends before proper completion.
Each session is automatically saved to the file $HOME/.sw/sessions/swinstall{swcopy}.last. This file is overwritten by each invocation of swinstall or swcopy.
You can also save session information from interactive or command-line sessions. From an interactive session, you can save session information into a file at any time by selecting the Save Session or Save Session As option from the File menu. From a command-line session, you can save session information by executing swinstall or swcopy with the -C session__file option.
A session file uses the same syntax as the defaults files. You can specify an absolute path for a session file. If you do not specify a directory, the default location for a session file is /.sw/sessions/ .
To re-execute a saved session from an interactive session, use the Recall Session option from the File menu. To re-execute a session from a command-line, specify the session file as the argument for the -S session__file option of swinstall or swcopy.
Note that when you re-execute a session file, the values in the session file take precedence over values in the system defaults file. Likewise, any command line options or parameters that you specify when you invoke swinstall or swcopy take precedence over the values in the session file.
Software and Target Lists
The swinstall and swcopy commands support software and target selections from separate input files (see the -f and -t options). Software and targets specified in these files will be selected for operation.
Additionally, the interactive interface for these commands read a list of possible hosts to operate on from the values found in:
/var/adm/sw/defaults.hosts - the system-wide default list of hosts,
$HOME/.sw/defaults.hosts - the user-specific default list of hosts.
Hosts in this file will not be marked for operation, but provide a default list from which to choose. For each interactive command, target hosts containing roots, containing depots, and hosts serving as PC controllers are specified in separate lists ( hosts, hosts_with_depots, and pc_controllers respectively). The list of hosts are enclosed in {} braces and separated by white space (blank, tab and newline). For example:
swinstall.hosts={hostA hostB hostC hostD
hostE hostF}
swinstall.pc_controllers={pc1 pc2} (HP OpenView Software Distributor
swcopy.hosts_with_depots={hostS}
swcopy.pc_controllers={pc1 pc2} (HP OpenView Software Distributor
The following paragraph applies only to HP OpenView Software Distributor
For PC software installation, the interactive interface generates PC target lists by querying the PC Controller (and it’s associated fileserver). All users, groups, and machines returned from this query will be included in the default list from which to choose. Additionally, all machines returned from this query will by default be selected for installation when the user selects a PC Controller.
Environment Variables
The swinstall program sets these environment variables for use by the software control scripts being executed:
LANG
Determines the language in which messages are displayed. If LANG is not specified or is set to the empty string, a default value of C is used. See lang(5) for more information.
NOTE: The language in which the SD agent and daemon log messages are displayed is set by the system configuration variable script, /etc/rc.config.d/LANG. For example, /etc/rc.config.d/LANG, must be set to LANG=ja_JP.SJIS or LANG=ja_JP.eucJP to make the agent and daemon log messages display in Japanese.
SW_CONTROL_DIRECTORY
Defines the current directory of the script being executed, either a temporary catalog directory, or a directory within in the Installed Products Database (IPD). This variable tells scripts where other control scripts for the software are located (e.g. subscripts).
SW_DEFERRED_KERNBLD
This variable is normally unset. If it is set, the actions necessary for preparing the system file /stand/system cannot be accomplished from within the postinstall scripts, but instead must be accomplished by the configurescripts. This occurs whenever software is installed to a directory other than /, such as for a cluster client system. This variable should be read only by the configure and postinstall scripts of a kernel fileset. The swinstall command sets these environment variables for use by the kernel preparation and build scripts.
SW_INITIAL_INSTALL
This variable is normally unset. If it is set, the swinstall session is being run as the back end of an initial system software installation ("cold" install).
SW_KERNEL_PATH
The path to the kernel. The default value is /stand/vmunix, defined by the swagent option or kernel_path.
SW_LOCATION
Defines the location of the product, which may have been changed from the default product directory. When combined with the SW_ROOT_DIRECTORY, this variable tells scripts where the product files are located.
SW_PATH
A PATH variable which defines a minimum set of commands available to for use in a control script (e.g. /sbin:/usr/bin).
SW_ROOT_DIRECTORY
Defines the root directory in which the session is operating, either "/" or an alternate root directory. This variable tells control scripts the root directory in which the products are installed. A script must use this directory as a prefix to SW_LOCATION to locate the product’s installed files. The configure script is only run when SW_ROOT_DIRECTORY is "/".
SW_SESSION_IS_KERNEL
Indicates whether a kernel build is scheduled for a kernel fileset selected for installation. This variable is exported to a fileset’s control scripts and must be tested by preremove scripts to determine whether any additions must be performed by the fileset’s postinstall script at install time.
A TRUE value indicates that the selected kernel fileset is scheduled for a kernel build and that changes to /stand/system are required. A null value, indicates that a kernel build is not scheduled and that changes to /stand/system is not required.
The value of this variable is always equal to the value of SW_SESSION_IS_REBOOT.
SW_SESSION_IS_REBOOT
Indicates whether a reboot is scheduled for a fileset selected for installation. Because all HP-UX kernel filesets are also reboot filesets, the values of this variables is always equal to the value of SW_SESSION_IS_KERNEL.
SW_SOFTWARE_SPEC
This variable contains the fully qualified software specification of the current product or fileset. The software specification allows the product or fileset to be uniquely identified.
SW_SYSTEM_FILE_PATH
The path to the kernel’s system file. The default value is /stand/system.
Signals
The swinstall and swcopy commands catch the signals SIGQUIT and SIGINT. If these signals are received, the command prints a message, sends a Remote Procedure Call (RPC) to the agents to wrap up, and then exits.
Each agent will complete the install/copy task (if the execution phase has already started) before it wraps up. This avoids leaving software in a corrupt state.
Locking
SD commands use a common locking mechanism for reading and modifying both the Installed Products Database (IPD) and software depots. This mechanism allows multiple readers but only one writer on an IPD or depot:
Write Locks
swinstall commands that modify the IPD are restricted from simultaneous modification using fcntl(2) locking on the file
<IPD location>/swlock
(e.g. /var/adm/sw/products/swlock).
Depot Modification Locks
swcopy commands that modify a software depot are also restricted from simultaneous modification using fcntl(2) locking on the file
<depot directory>/catalog/swlock
(e.g. /var/spool/sw/catalog/swlock).
Read Locks
Both swinstall and swcopy commands set fcntl(2) read locks on either IPDs or depots using the swlock file mentioned above. When a read lock is set, it prevents all SDU commands from performing modifications (i.e. from setting write locks). Specifically, with swinstall and swcopy, the source depot is read locked for the duration of the command session. If a read lock cannot be set, the depot/media cannot be used as the software source.
During the analysis phase of swinstall, the IPD is read locked while obtaining information about the installed products. If a read lock cannot be set, the analysis fails.
The Terminal User Interface (TUI) is only supported on SD-UX
VT320 Terminal Support
Because the VT320 terminal has predefined local functions for keys labeled as F1, F2, F3 and F4, users should use following mapping when they desire to use function keys:
HP or Wyse60 VT320 or HP 700/60 in VT320 mode
F1 PF2 !
F2 PF1 !
F3 space bar
F4 PF3 !
F5 F10, [ EXIT ], F5 *
F6 none
F7 F18, first unlabeled key to right of Pause/Break*
F8 F19, second unlabeled key to right of Pause/Break*
* - When using PC-AT keyboard with HP 700/60 in VT320 mode
! - See "Configuration: HP 700/60 in DEC mode, or DEC terminals with PC-AT type keyboard"
Further, since DEC terminals do not support softkey menu, no such menu is displayed on these terminals.
Many applications tend to use TAB for forward navigation (moving from one field to another) and shift-TAB is used for backward navigation. Users having DEC terminals or using terminals in DEC emulation modes such as VT100 or VT320 may note that these terminals/emulators may give out same character for TAB and shift-TAB. As such, it is impossible for an application to distinguish between TAB and shift-TAB, and both of them treated as if a TAB key was pressed. It might present slight overhead to users in case they want to go backwards. Now instead, they should complete rest of the inputs and get back to the desired field later.
VT100 Terminal Support
VT100 does not allow the (f1-f8) function keys to be configured. Therefore, the following keyboard mappings will apply to VT100 terminals:
HP or Wyse60 VT100 or HP 700/60 in VT100 mode
F1 PF2 !
F2 PF1 !
F3 space bar
F4 [PF3], [space bar] or [PF3], [=] !
F5 return
F6 none
F7 none
F8 none
! - See "Configuration: HP 700/60 in DEC mode, or DEC terminals with PC-AT type keyboard"
Further, since DEC terminals do not support softkey menu, no such menu is displayed on these terminals.
Many applications tend to use TAB for forward navigation (moving from one field to another) and shift-TAB is used for backward navigation. Users having DEC terminals or using terminals in DEC emulation modes such as VT100 or VT320 may note that these terminals/emulators may give out same character for TAB and shift-TAB. As such, it is impossible for an application to distinguish between TAB and shift-TAB, and both of them treated as if a TAB key was pressed. It might present slight overhead to users in case they want to go backwards. Instead, they should complete rest of the inputs and get back to the desired field later.
Configuration: HP 700/60 terminal in DEC mode, or DEC terminal with PC-AT type keyboard
Customers using the following configuration may want to be aware of the following keyboard difference.
It may be possible for a user with the "HP 700/60 terminal in DEC mode, or DEC terminal with PC-AT type keyboard" configuration to be told to press function key F1 through F4 to achieve some desired result. For HP 700/60 terminal in DEC mode or DEC terminals, these functions keys may be mapped onto PF1-PF4 keys. (see "Keyboard Mappings"). However, the PC-AT type keyboard does not provide PF1, PF2, PF3, or PF4 keys, as does the DEC/ANSI keyboard.
Keyboard Mappings
"Num Lock" maps to "PF1"
"/" maps to "PF2"
"*" maps to "PF3"
"-" maps to "PF4"
The "Num Lock", "/", "*", and "-" keys are located on the keyboard, in a row, above the number pad on the right side of the keyboard. Please note that although this keyboard is called a PC-AT type keyboard, it is supplied by HP. A PC-AT type keyboard can be recognized by location of ESC key at the left-top of the keyboard.
Wyse60 Terminal Support
On Wyse60, use DEL (located next to Backspace) key to backspace. On an HP 700/60 with a PC-AT type keyboard in Wyse60 mode, the DEL key is located in the bottom row on the number pad.
Wyse60 terminals provide a single line to display softkey labels unlike HP terminals which provide two lines. Sometimes this may result in truncated softkey labels. For example, "Help on Context" label for F1 may appear as "Help on C". Some standard labels for screen-oriented applications such as SAM and swinstall are as follows:
On wyse60 may appear as .. means
Help On C Help On Context
Select/D Select/Deselect
Menubar Menubar on/off
RETURN VALUES
An interactive swinstall or swcopy session always returns 0. A non-interactive swinstall or swcopy session returns:
0 The software_selections were successfully installed/copied.
1 The install/copy operation failed on all target_selections.
2 The install/copy operation failed on some target_selections.
DIAGNOSTICS
The swinstall and swcopy commands write to stdout, stderr, and to specific logfiles.
Standard Output
An interactive swinstall or swcopy session does not write to stdout. A non-interactive swinstall or swcopy session writes messages for significant events. These include:
• a begin and end session message,
• selection, analysis, and execution task messages for each target_selection.
Standard Error
An interactive swinstall or swcopy session does not write to stderr. A non-interactive swinstall or swcopy session writes messages for all WARNING and ERROR conditions to stderr.
Logging
Both interactive and non-interactive swinstall and swcopy sessions log summary events at the host where the command was invoked. They log detailed events to the swagent logfile associated with each target_selection.
Command Log
The swinstall and swcopy commands log all stdout and stderr messages to the the logfile /var/adm/sw/swinstall.log (/var/adm/sw/swcopy.log). Similar messages are logged by an interactive swinstall and swcopy session. (The user can specify a different logfile by modifying the logfile option.)
Target Log
A swagent process performs the actual install/copy operation at each target_selection. For install tasks, the swagent logs messages to the file var/adm/sw/swagent.log beneath the root directory (e.g. / or an alternate root directory). For copy tasks, the swagent logs messages to the file swagent.log beneath the depot directory (e.g. /var/spool/sw).
The following line applies only to HP OpenView Software Distributor
Command and target log files can be viewed using the swjob command.
EXAMPLES
swinstall
To invoke an interactive session of swinstall:
swinstall
Select the C and Pascal products from the network source software server (sw_server) and start an interactive session:
swinstall -i -s sw_server cc pascal
The following example applies only to HP OpenView Software Distributor
Install the C and Pascal products to a set of remote hosts:
swinstall -s sw_server cc pascal @ hostA hostB hostC
Update the HP Omniback product from a CD-ROM mounted at /cd :
swinstall -s /cd/swmedia Omniback
Install an incompatible version of HP Omniback into the directory /exports:
swinstall -x allow_incompatible=true -s/products Omniback,a=arch @ /exports
Install all products from the cartridge tape /dev/rmt/0:
swinstall -s /dev/rmt/0 \*
Reinstall the software_selections listed in the file /tmp/install.products on the hosts listed in the file tmp/install.hosts:
swinstall -x reinstall=true -f/tmp/install.products -t/tmp/install.hosts
Execute swinstall interactively using the session file /tmp/case.selections as a basis:
swinstall -i -S /tmp/case.selections
To linkinstall the product TEST to the clients clientA, clientB from the server:
swinstall -l -r -s :OS_700 TEST @ clientA clientB
To linkinstall product TEST2 to your own "/" directory from an application server on "serve":
swinstall -l -s serve TEST2
The following example applies only to HP OpenView Software Distributor
Install the C product to a set of PC end targets:
swinstall -s sw_serve cc @ pc_controller::PC1 pc_controller::PC2
To schedule the above installation to run at the indicated time:
swinstall -Q 12/01,11:00 -s sw_serve cc @ pc_controller::PC1 pc_controller::PC2
swcopy
Invoke an interactive session of swcopy:
swcopy
Invoke an interactive session, using default depot at hostX as the source:
swcopy -i -s hostX
Copy all products from the cartridge tape /dev/rmt/0m to the default depot on the local host:
swcopy -s /dev/rmt/0m \*
Load the software_selections listed in the file /tmp/load.products using the default source/depot:
swcopy -f /tmp/load.products
The following example applies only to HP OpenView Software Distributor
Copy the C and Pascal products to some local and remote depots:
swcopy -s sw_server cc pascal @ /var/spool/sw hostA:/tmp/sw hostB
LIMITATIONS
The SunOS and SD-UX versions of swinstall and swcopy do not support the installation and configuration of software products on remote targets.
The SunOS version of swinstall and swcopy does not provide a graphical user interface to install and configure software products.
The following PC information applies only to HP OpenView Software Distributor
When copying software to a PC Controller, the swcopy command only supports a single PC depot (configured on the PC Controller).
For PC software installation, the swinstall command first copies software to the PC depot, where it is then accessed by the SD PC agent at each PC target. Only options that apply to swcopy apply when installing PC software to the PC Controller. The following options are not supported:
-r
allow_downdate
allow_multiple_versions
enforce_scripts
enforce_kernbld_failure
defer_configure
register_new_root
When packaging PC software using the PC Console, functionality similar to the following swinstall options can be set via the Job Settings dialog:
autorecover_product
autoreboot
retry_rpc
enforce_dsa
loglevel
In addition, the following swcopy options do not apply to PC Controllers:
autoselect_dependencies
enforce_dependencies
create_target_path
autoselect_reference_bundles
mount_all_filesystems
target_directory
use_alternate_source
write_remote_files
FILES
/var/adm/sw/
The directory which contains all of the configurable (and non-configurable) data for SD. This directory is also the default location of logfiles.
/usr/lib/sw/sys.defaults
Contains the master list of current SD options (with their default values).
/var/adm/sw/defaults
Contains the active system-wide default values for some or all SD options.
$HOME/.sw/defaults
Contains the user-specific default values for some or all SD options.
/var/adm/sw/defaults.hosts
Contains the system-wide default list of hosts to manage.
$HOME/.sw/defaults.hosts
Contains the user-specific default list of hosts to manage.
/var/adm/sw/getdate.templ
Contains the set of date/time templates used when scheduling jobs.
$HOME/.sw/sessions/
Contains session files automatically saved by the SD commands, or explicitly saved by the user.
/var/adm/sw/products/
The Installed Products Database (IPD), a catalog of all products installed on a system.
/var/spool/sw/
The default location of a source and target software depot.
The following applies only to HP OpenView Software Distributor
/var/adm/sw/queue/
The directory which contains the information about all active and complete install jobs, copy jobs, and other jobs initiated by the SD commands.
PC FILES
The following applies only to HP OpenView Software Distributor
...\SD\DATA\
The directory which contains all of the configurable (and non-configurable) data for SD.
...\SD\DATA\DEPOT\
The default location of a source and target PC depot.
AUTHOR
swinstall and swcopy were developed by the Hewlett-Packard Company.
SEE ALSO
sd(4), sd(5), swacl(1M), swagentd(1M), swcluster(1M), swconfig(1M), swgettools(1M), swjob(1M), swlist(1M), swmodify(1M), swpackage(1M), swpackage(4), swreg(1M), swremove(1M), swverify(1M), update(1M), and the HP OpenView Software Distributor Administrator’s Guide or Managing HP-UX Software with SD-UX manuals.
Hewlett-Packard Company — HP-UX Release 10.20: July 1996