One of the most powerful features of Caldera Volution Manager is the ability to remotely manage the software on client systems. You can:
inventory the packages currently installed on a client (see Section 4.3.1)
add packages to a centralized Software Repository
access Caldera Volution Online for additional package information, such as updates and alerts
create profiles (lists of packages) to be installed, updated, or removed from a computer or group of computers
schedule and run profiles and software inventories
The package distribution tools are flexible and customizable. Through the use of constraints and links to particular groups of computers you can; for example, create a profile that only updates your Open UNIX 8 clients that have a particular hardware or software configuration. In addition, profiles support standard RPM installation flags and scripts, as well as any scripts you define.
The Software Repository contains all of the packages you can distribute to client systems. You define the location of the Software repository package distribution directories during installation (/opt/volution/srdfiles, by default). VM then sets up a virtual Software Repository in the directory structure and automatically generates package objects corresponding to software packages as you add them to a package distribution directory.
The virtual Software Repository is located under your organization container. Its default name is Software Repository, though you might have specified a different name during installation.
The Software Repository has these characteristics:
It can contain packages in either RPM (Linux system), custom (SCO OpenServer), or pkg (UnixWare or Open UNIX 8) format. If you browse the repository structure, you see three containers, one for each type of package. An additional container, URLholder, also exists to store the URLs of packages which Caldera Volution Online locates before they are downloaded.
Each package type container contains two objects: secure and pub. The secure container lists software packages which are available for installation, update, or removal. The pub container lists software packages that are currently installed on clients; this list is generated from software inventories.
The secure container is populated automatically each time you place a package in a package distribution directory.
The pub container is populated when software inventories are run. These packages exist on your client systems, but are not available for distribution unless you copy them into a package distribution directory on the VM Server. A software inventory only creates a package object in pub if the object does not already exist in pub or secure. If a package object already exists in pub, and a new version of the same object is created and placed in secure, the existing object in pub is automatically deleted.
Any software package you want to install, update or remove must first be placed in a package distribution directory. The Software Repository package distribution directories consist of directory pathnames of the form /opt/volution/srdfiles/type/OS/arch/vendor/release, where:
type is one of RPM (Linux system), custom (SCO OpenServer), or pkg (UnixWare or Open UNIX 8)
OS is one of Linux, UnixWare, Open UNIX 8, or SCO OpenServer
arch is either IA32 or IA64
vendor is one of the supported vendors, such as Caldera or Mandrake
version is the supported version for the package, such as 3.1.1 for a Caldera OpenLinux system.
For example, the directory /opt/volution/srdfiles/rpm/Linux/IA32/Caldera/3.1.1/ is where you should place RPMs for a Caldera OpenLinux 3.1.1 system. The first part of the path (/opt/volution/srdfiles) might be different if you specified a different location when Caldera Volution Manager was installed.
When you place a software package into a Software Repository package distribution directory, the Software Repository Daemon (SRD) makes the package available for distribution. For a technical description of SRD processing, see Section 3.1.2
SCO OpenServer custom packages are typically provided as a single VOL.000.000 file, or a tarball of several VOL.xxx.xxx files. For the SRD to create an object for SCO OpenServer packages, you must provide a either a single VOL file or a tarball of multiple VOL files. If you have several cpio archives or VOL files, you must tar them up before the SRD can process them. Also note that the filename cannot begin with ``VOL.'' (VOL followed by a period).
We strongly recommend that you review the READMEs included with SCO OpenServer packages to determine prerequisites and the order in which software must be installed. You need to set up per-product ``Custom Requires'' files that define dependencies.
VM only deals with custom packages at the product level. Only products can be distributed, and only products show up in a software inventory.
Caldera Volution Manager can only distribute UnixWare or Open UNIX 8 packages or package sets that are in datastream format. The first line of a datastream file begins with
VM can also process a compressed datastream package. You can convert a package to datastream format using pkgtrans(1).
When you place a package set datastream in the repository, an object is created for the set, and another object for each package in the set. A software inventory shows both types of objects.
A patch is a type of package issued to update SCO OpenServer, UnixWare, and Open UNIX 8 systems. Unlike most packages, it might be desirable to install a patch more than once. Some points to consider when installing patches include:
When you include a patch in a profile, the patch will be installed regardless of whether it was previously installed.
If the profile includes both packages and patches, all of the packages are installed before any of the patches are installed.
If you are distributing a package that needs to be patched after installation, you should include both the package and the patch in the profile.
It is not necessary to understand SRD processing to distribute software successfully, but this information is useful when troubleshooting or reconfiguring the SRD.
The SRD scans the Software Repository package distribution directories to see if there are any new software packages.
The scan interval and the directories to scan are defined in /etc/opt/volution/volutionsrd.conf
If a new package is found, the package is moved from the package distribution directory to a directory where it will be available to an http/ftp server.
A packagename.signature file is also created and moved into this directory. The .signature file is later downloaded to client(s) along with the package, and is used to verify the integrity of the software package. The http/ftp directory is also defined in /etc/opt/volution/volutionsrd.conf
The SRD retrieves information about the package from the package file.
An object representing the package is created and placed in the appropriate secure container.
This object contains the URL to the http/ftp server directory where the package is located.
If an object for the package already exists in pub (that is, an object representing an older instance or version of the package), the pub object is deleted.
The SRD scans for new packages every minute, by default. You can increase or decrease this interval by logging onto the VM Server as the root user and editing /etc/opt/volution/volutionsrd.conf to change the value for theFilesystem Polling variable. You then need to stop and restart the daemon, using the commands /etc/rc.d/init.d/volutionsrd stop and /etc/rc.d/init.d/volutionsrd start.
Caldera Volution Online is a proactive software management service for managing RPMs on Linux systems. It utilizes an extensive knowledge base of alerts, patches, releases, and dependencies to help you keep current with changes in Open Source software. An innovative "What If" feature provides information about the impact of software changes before you implement them. It also supplies you with an Install Plan script that works with the Caldera Volution Manager to install or remove required packages on your computers. Additional information about features is available at http://www.caldera.com/products/volutiononline. Click Volution Online to access Caldera Volution Online.
With Caldera Volution Online package management features, you can:
Scan for security alerts pertaining to the packages installed on your clients, then take corrective action (see Section 184.108.40.206).
View whether or not a currently-installed package has an update available, then download the package into a Software Repository package distribution directory (see Section 220.127.116.11).
Caldera Volution Online information is integrated into both software inventories for a single system and the package lists shown in the pub and secure directories of the Software Repository.
When scanning for alerts or updates, you can access a package list in any of these ways:
To view the result of a software inventory on a particular system, select the software> rpm object beneath the computer object.
To view all packages available for installation or removal in the Software Repository, select the secure directory beneath the RPM directory.
To view all packages currently inventoried on your clients, select the pub directory beneath the RPM directory.
Caldera Volution Online maintains a repository of software alerts that are updated regularly with the latest information about problems and workarounds. Alerts provide information about the nature of the security problem, the affected software and operating systems, and how to work around the problem.
To view security alerts:
Access a package list.
Select the box labelled Show Volution Online information and click Apply.
Scan the Alert column for packages containing an alert icon. Packages are indexed alphanumerically. To view additional packages, click one of the letter or number index buttons at the top of the list.
Select an alert icon to view a summary of the alerts pertaining to the package.
Select Full Details for information about the alert and any workarounds.
Based on the alert, you might need to update or remove the associated package, or perform other configuration tasks.
Caldera Volution Online maintains status for the current release of a variety of Linux packages, then lets you view information about a newer package along with instructions to download it to the repository.
To view and update package versions:
Access a package list.
Check the box labelled Show Volution Online information and click Apply.
Scan the Current column for an icon indicating that a newer version is available.
Select the icon to view information about the new package.
Select the package name in the information window to download the package to the Software Repository package distribution directory.
Once the package is downloaded to the repository, you must create a profile to distribute it to the desired clients.
You can create a software profile to install, update, or remove software packages on one or more of your client systems. The packages must be placed in the Software Repository before they can be distributed (see Section 3.1.1). You can use the Distribute Software wizard to create a software profile to distribute software, or manually create a profile.
The Distribute Software wizard guides you through the process of creating a software profile.
Click Wizards->Distribute Software.
Follow the directions presented on the screens.
The wizard asks you to supply:
a unique name for the profile you are creating
the type of software package(s) you want to distribute (RPM, pkg, or custom).
a list of packages to be distributed
the operating system type(s) you want to distribute to
whether you want to distribute to a computer, computer group, or container
when you want the distribution process to begin
This procedure shows how to create a basic software profile to install a single package:
From the VM Management Console, select the profiles directory.
Select Create an Object.
Select the profile object type from the drop-down list. Enter a profile name (such as Install gimp), then click Create.
Select the object you just created (Install gimp) from the Contents pane.
If you are installing a Linux RPM, select Edit Package Flags.
Enter the Install Mode (Install, Upgrade, or Freshen) and specify any necessary installation or removal flags (see Section 3.2.3).
For this example, ensure that Install is checked and click OK.
Select Edit Package Lists.
Select packages to add or remove to the profile. For this example:
Enter a search string for the package; for example, gimp. Also, select the appropriate operating system; for example,Linux.
Select the desired package from the resulting list and click Link.
Note: SCO OpenServer packages have names like; for example, SCO:tcp:oss4856. When searching for these packages you might want to use a wildcard asterisk before and after the literal ``oss'', as in *oss*.
Select Edit Constraints.
Constrain the profile to a subset of clients based on their operating system, vendor, release, and architecture. You could create a constraint to run this profile only on Linux systems. Then, even if you linked the profile to a computers directory containing computers with various types of operating systems, it would only run on Linux systems. This step is optional and, for this example, no changes are necessary.
Select Edit the Scripts.
Enter one or more shell scripts to be run on the client before or after software is installed or removed. You might use a script to clean up temporary installation directories left behind by a package installation, or remove files not successfully removed by a package removal. This step is optional and, for this example, no changes are necessary.
Select Edit the Schedule, select a schedule type, and click OK.
Select Add or Remove Links.
Enter a search string corresponding to the computer, or computer container you want to link to, then click Search. For more information about searching, see Section 2.3.1.
Select the checkbox next to the desired computer or container, then click Link.
Review the Summary to ensure that your profile lists the correct package flags, packages, constraints, scripts, and links. If it does not, correct the information and review the Summary again.
Click Save Changes.
When creating a software profile for Linux RPMs, you can specify the installation mode and installation and removal flags. These flags are set by selecting Edit Package Flags and are described in the following tables:
Table 3-1. Install Mode
|Install||Install a new package.|
|Upgrade||Install a new version of the package and remove the older version, if it exists.|
|Freshen||Upgrade a package if a previous version is installed. This is useful if a profile contains a number of packages, some of which are updates and others are new packages. You could use Freshen to apply updates to only those computers where the previous version is already installed. If the profile contains packages that are not installed on all of the computers in the container, the new packages aren't installed. This makes it unnecessary to create a separate profile for each computer container.|
Table 3-2. Install Flags
|nodeps||Do not check dependencies before installing or upgrading a package.|
|notriggers||Do not execute scripts that are triggered when this package is installed.|
|ignoreos||Install or upgrade even if the operating system of the binary package and host don't match.|
|ignoresize||Do not check mount filesystems for sufficient disk space before installing this package.|
|excludedocs||Do not install any files that are marked as documentation (including man pages and textinfo documents).|
|ignorearch||Install or upgrades even if the architecture of the binary package and host don't match.|
|force||Install the packages even if some of them are already installed or they replace files from other installed packages.|
|noscripts||Do not execute preinstall or postinstall scripts.|
|allfiles||Install or upgrade all the missing files in the package, even if they already exist.|
|replacepkgs||Install the package even if some of them are already installed on this system.|
|justdb||Update the database, not the filesystem.|
|replacefiles||Install the package even if it replaces files from other already installed packages.|
|oldpackages||Allow an upgrade to replace a newer package with an older one.|
Table 3-3. Remove Flags
|nodeps||Do not check dependencies before uninstalling the package.|
|allmatches||Remove all versions of the package that match package-name. Normally, an error is issued if package-name matches multiple packages.|
|noscripts||Do not execute scripts that are triggered when this package is installed.|
|justdb||Update only the database, not the filesystem.|
|notriggers||Do not execute scripts that are triggered when this package is removed.|