setld(8)
Name
setld − software subset management utility
Syntax
/etc/setld [ −D dir ] −l location [ subset... ] /etc/setld [ −D dir ] −d subset...
/etc/setld [ −D dir ] −i [ subset... ]
/etc/setld [ −D dir ] −u location
/etc/setld [ −D dir ] −v [ subset... ]
/etc/setld [ −D dir ] −c subset message /etc/setld [ −D dir ] −x location [ subset... ]
Arguments
location
Specifies location of distribution. This can be be either the name of a directory, a device special file name, or the name of a remote installation server. The specified location is used to determine the type of media to be used. Valid location specifiers include the following:
/dev/rmt0h
Magnetic tape on tape unit 0
/mnt/VAX/BASE
Disk distribution in directory /mnt/VAX/BASE
hostname:
Remote distribution from server hostname
subset
Specifies the name of a subset on which an operation is to be performed. Subset names are strings of seven or more characters used to uniquely identify subsets, for example, UDTUUCP400. message
Specifies a string to be sent to a subset control program to configure a subset.
Function Keys
−l Load software from distribution mounted on location. If no optional subset is specified, a menu of subsets available on the distribution is presented. Any subset chosen from the menu is then loaded on the system. If an optional subset is specified, only that subset is loaded.
−d Delete subset from the system. Each subset named on the command line is removed from the system. All files in each subset which have not been modified since installation are unlinked.
Subsets can be marked by a vendor during manufacture so that they cannot be deleted. Attempts to delete such subsets will generate an appropriate diagnostic.
If a subset being deleted is required by other subsets installed to the system, these are listed and the user is asked to confirm that the subset is to be deleted.
−i Inventory the system or any specified subset. When no subset is specified, the state of the system is listed on standard output in three columns. The first column gives the code for a subset known to the system. The second column lists the status of that subset. The value for the status is installed if the subset is currently installed, corrupt if the subset failed to install correctly, or blank if the subset is not installed. The third column presents the textual description for that subset.
When subset arguments are present, the names of the files which make up the contents of each subset are listed. The subset does not need to be currently installed for this option to display its contents.
−u Update software from media mounted on location. Currently installed subsets that are earlier versions than the ones provided on the media will be updated from the distribution.
Update installations replace all files on the system that belong to each subset. Files that are already installed to the system and that have been changed since load time are archived to /var/adm/install/archive. All files in the subset to be updated are loaded from the distribution. Any files in the distribution that have been marked by the vendor as having customer precedence are restored to the system from the /var/adm/install/archive directory. Any file from the distribution which would be overwritten by restoring an archived file is saved in /var/adm/install/reference. All subset inventory information for previously installed copies of the newly updated subsets is lost.
Not all subsets on all distributions are update subsets. If this option is used on a non-update subset, an error message will be printed.
−v Verify each subset. The installation verification program (IVP) provided with subset is executed. If no IVP is provided for subset, setld remains silent.
−c Configure subset, passing the configuration message message to the subset control program.
−x Extract subsets from the distribution media mounted on location. If you specify no subset arguments, setld displays a menu of subsets on the distribution. Subsets chosen from this menu are extracted.
If you specify subset arguments, setld extracts only the subsets specified.
Description
The setld command is used for installing and managing software. Software is organized into subsets which may be loaded, deleted, inventoried, updated, verified and configured. The load and update operations read software from disks, tapes or from an Internet installation server.
The setld command is also used to read the contents of an installation tape onto a disk so that the disk can be used as the distribution media.
Options
−D dir
Specify dir as the root directory for an operation. The default is / for all operations except −x. The default for −x is the current directory. If this option is specified, setld will operate on the software rooted at the specified directory. This option is useful for installing software to offline systems on removable media or dual-ported disk drives.
Restrictions
Do not attempt to install software into an NFS mounted file system.
Examples
Load software subsets from tape unit 2:
setld −l /dev/rmt2h
Load the UDTUUCP400 subset from tape unit 2:
setld −l /dev/rmt2h UDTUUCP400
Load the UDTUUCP400 subset to an offline system rooted at /mnt from tape unit 2:
setld −D /mnt −l /dev/rmt2h UDTUUCP400
Load the UDTUUCP400 subset to an offline system rooted at /mnt from installation server mumbly:
setld −D /mnt −l mumbly: UDTUUCP400
Load the UDTUUCP400 subset to an offline system rooted at /mnt from a disk distribution in /mnt2/RISC/BASE:
setld −D /mnt −l /mnt2/RISC/BASE UDTUUCT400
Delete the UDTUUCP400 and UDTCOMM400 subsets:
setld −d UDTUUCP400 UDTCOMM400
Delete UDTUUCP400 and UDTCOMM400 subsets from the offline system rooted at /mnt:
setld −D /mnt −d UDTUUCP400 UDTCOMM400
Display the status of all subsets known to the system:
setld −i
Display the status of all subsets known to the offline system rooted at /mnt:
setld −D /mnt −i
Display the contents of the UDTUUCP400 subset:
setld −i UDTUUCP400
Update subsets from distribution on tape unit 1:
setld −u /dev/rmt1h
Update subsets from server mumbly:
setld −u mumbly:
Verify all subsets on the offline system mounted on /mnt:
setld −D /mnt −v
Verify the ULTVAXC400 subset on the running system:
setld −v ULTVAXC400
Send the configuration message Don’t Worry, Be Happy to the UWSX11400 subset:
setld −c UWSX11400 "Don’t Worry, Be Happy"
Extract subsets from the distribution on tape unit 0 into the current directory:
setld −x /dev/nrmt0h
Extract subsets from the disk distribution in /mnt/RISC/UNSUPPORTED into /usr/bigdisk:
setld −D /usr/bigdisk −x /mnt/RISC/UNSUPPORTED
Return Values
The exit status from setld is 0 if the operation requested was performed successfully. All other cases yield exit status of 1 for failed operations on mandatory subsets and greater than 1 for failed operations on optional subsets.
Diagnostics
−c can be used by super-user only
The setld command was entered by a non-root user with one of the root-only function keys. The only function which setld will perform for non-privileged users is −i.
error in Args()
This message is displayed if setld cannot understand the command line arguments. It will always be preceded by a usage message or another diagnostic.
Temp directory /usr/tmp/stltmpXXXXXX already in use
This message is displayed if the temporary directory that setld would create for itself already exists. Run setld again.
Cannot create directory dir
The directory dir which is needed for setld to operate correctly could not be created. This can happen if parts of the system are NFS-mounted but not root-mapped.
error in Dirs()
This message always accompanies the preceding two messages.
subset: not currently installed, cannot configure.
Occurs when subset is used as an argument to −c but subset is not installed to the system.
subset: missing control program, cannot configure.
An attempt is being made to configure subset but the program responsible for doing this is missing. Delete the subset and install it again before retrying the operation.
subset: not currently installed, cannot delete
A subset specified as an argument with the −d switch is not installed on the system, it cannot be deleted.
ReadCtrlFile(): cannot find filename.ctrl
The control file named in the error message is not where it is expected to be.
ReadCtrlFile(): cannot read filename.ctrl
The control file named in the error message exists but cannot be read.
setld: Sorry, You may not delete the description (subset) subset
The subset in the error message which was used as an argument with the −d switch is a subset which was marked by its vendor during manufacture as a subset that cannot be deleted. In this case, the subset cannot be removed from the system by setld.
subset: deletion declined by subset control program
The subset named in the error message cannot be deleted because of the return status of the subset control program. This indicates that the subset control program provided with this subset has determined that the subset should not be deleted. This message may be seen with a diagnostic issued directly from the subset control program. Consult the documentation accompanying the product.
Tape Positioning Error
An error was detected while positioning the tape for a read operation while using setld with either the −l, −u, or −x switches. This can indicate a faulty tape or a transient tape subsystem error. Check the error log and try the operation again.
Error Extracting subset
An unrecoverable error has occurred when trying to extract a subset from the distribution.
Control Info Error on subset
An attempt to access a control or inventory file or subset control program has failed while extracting subsets. This may indicate a faulty distribution. Try the operation again.
subset: extract checksum error
A checksum error was detected in the extracted copy of the subset subset. This may indicate a transient tape subsystem error. Check the error log and retry the extract.
Error contacting server hostname: error-message
Attempt to contact installation server hostname failed. The error-message provides more information.
Device location not supported for installations.
The location specified on the command line was not recognized as a valid input location for a −l, −u, or −x operation.
Cannot access /dev/nrmt?h
The device special file /dev/nrmt? either does not exist or is not a character special file. Remake the file with MAKEDEV and try the operation again.
subset: Unknown subset
A subset argument that was specified with the −i switch does not correspond to any subset known to the system. Check the command line for spelling errors.
location/instctrl: no such file or directory
The disk distribution location specified on the command line does not point to a valid directory. Check the command line for spelling errors.
Files
/etc/setldlog Logfile for setld transactions
/usr/etc/subsets/*.inv
Subset inventory files
/usr/etc/subsets/*.ctrl
Subset control files
/usr/etc/subsets/*.scp
Subset control programs
/usr/etc/subsets/*.lk
Subset installed lock files
/usr/etc/subsets/*.dw
Subset corrupt lock files
/var/adm/install/archive
Update archive directory
/var/adm/install/reference
Update reference directory
See Also
kits(1), fitset(8), frm(8), fverify(8), sysupd(8).
Guide to Preparing Software for Distribution on ULTRIX Systems