Software Distributor

Software Distributor (SD) is the Hewlett-Packard company's name for their HP-UX software package management system.

SD provides a set of tools for creating packages that will install software on a system running the HP-UX operating system. The packages can be grouped together into a software repository called a depot, and a server can be configured to host multiple depots for installation of software packages and even entire systems.

SD was first available with release 10.0 of HP-UX in 1995. Since then it has undergone several enhancements and bug fixes, and now provides a reliable software installation tool. It uses a client-server arrangement to distribute software using a background daemon called swagentd. This agent is started at boot time, and communicates using either the TCP or UDP protocols through RPC. The SD packages are normally stored and transmitted in compressed form, using either the gzip or compress programs.

Commands

The tools for performing SD operations are normally accessed from the command line. SD includes the following commands:

These commands include a broad range of command-line options that allow relatively fine control of the task being performed. In addition to command-line programs, several of these tools can also launch GUI versions in an X Window System display. The GUI version of swinstall performs some filtering of the software list to match software packages with the system where it is being run.

The commands log messages to an administrative area, which can be useful for diagnosing installation issues or just tracking what software is loaded or removed.

Packaging

Software packages are built by means of a specification file, a set of install scripts, and the actual software content. The install scripts are executed during software installation, verification, and removal, and can be used to prepare a system for the software and to perform activation or deactivation of the package. The specification file determines how the software package will be organized, list the locations of the various files to be loaded into the package, restrict the systems on which the package can be installed, and determine the security configuration of the package. It also provides various information about the package, such as a name, version, and description.

Software packages are organized in a hierarchy of containers, with the highest level being a bundle or product and the lowest being the filesets and then files. The hierarchy is arranged as follows:

Actually only the Product and Fileset levels are needed for many packages. The Subproduct level is sometimes used to group together Filesets, while the Bundle provides a higher-level grouping for related products. There can be one or more filesets in a Product, and one or more products in a Bundle. The Fileset level is used specifically for loading the files. A product can be installed without all of its associated filesets, &c.

The filesets and products can be linked together by various requirement tags, which cause swinstall to select the appropriate dependencies automatically.

Each fileset can have multiple control scripts specific to the files it will load. These scripts are executed in the following order during an installation:

There is a corresponding set of scripts that are executed in the reverse order during a swremove:

Other scripts include verify for performing a sanity check with the swverify command, unpreinstall, and unpostinstall. All, some, or none of these scripts can be included in the package, depending on the requirements of the installation. They are useful for performing cleanup of previous packages, creating links, adding the software directory to various search environment variables, and so forth.

See also

This article is issued from Wikipedia - version of the Saturday, July 25, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.