Chapter 4. Red Hat Satellite and Solaris-specific Information
4.1. UNIX Support Guide
4.1.1. Supported UNIX Variants
Table 4.1. Supported Solaris Architectures and Versions
| Solaris Version | sun4m | sun4d | sun4u | sun4v | sun4us | x86 |
|---|---|---|---|---|---|---|
| Solaris 8 | yes | no | yes | n/a | no | no |
| Solaris 9 | yes | n/a | yes | n/a | no | yes |
| Solaris 10 | n/a | n/a | yes | yes | no | yes |
4.1.2. Prerequisites
- Red Hat Satellite 5.0 or later
- A Satellite certificate with Management entitlements
- Management entitlements for each UNIX client
- Red Hat Network packages for UNIX including python, pyOpenSSL, and the Red Hat Network Client packages
- Sunfreeware packages that provide supporting libraries
Note
Some of these packages are available via the Red Hat Satellite. See Section 4.1.7.1, “Downloading and Installing Additional Packages” for the complete list.
4.1.3. Included Features
- The Red Hat Network Service Daemon (
rhnsd), which triggersrhn_checkaccording to a configurable interval - The Red Hat Network Configuration Client (
rhncfg-client), which executes all configuration actions scheduled from the Satellite - The Red Hat Network Configuration Manager (
rhncfg-manager), which allows command line administration of Red Hat Network configuration channels - The
rhn_checkprogram, which checks in with the Satellite and performs any actions scheduled from the server - All Management-level functionality, such as system grouping, package profile comparison, and use of the System Set Manager to administer multiple systems at once
- A Provisioning feature called Remote Command which enables users to schedule root-level commands on any managed client through the Satellite's website, if the client allows this action
4.1.4. Differences in Functionality
- The Red Hat Update Agent for UNIX offers a much smaller set of options than its Linux counterpart and relies upon the operating system's native toolset for package installation, rather than
rpm- See Section 4.1.8.2.4, “Updating From the Command Line” for the precise list of options. - The Red Hat Network Push application has been similarly modified to upload native UNIX file types, including packages, patches, and patch clusters.Since Solaris package, patch and patch cluster files are different from RPM files, the channel upload mechanism is somewhat different.There are two applications in the
rhnpushpackage for Solaris:- The first,
solaris2mpm, is an Red Hat Network utility that creates an MPM file for each Solaris package or patch. The neutral format of the MPM file allows the Satellite to understand and manage the uploaded files. - The second,
rhnpush, has been extended so that it can handle MPM as well as RPM files. Otherwise, it operates identically to the Linux version ofrhnpush.
- The Channels tab of the Red Hat Network website has been augmented to accommodate the storage and installation of native UNIX file types.
4.1.5. Excluded Features
- All Provisioning-level functionality, such as kickstarting and package rollback, with the exception of configuration file management
- All Errata-related options, since the concept of Errata Updates is not understood in UNIX
- Source files for packages
RHAT*.pkg files during installation is not supported.
4.1.6. Satellite Server Preparation and Configuration
- During the Satellite installation:Enable UNIX support on the Satellite by checking the "Enable Solaris Support" box on the Red Hat Satellite configuration screen during the installation process.
- After the Satellite has been installed:Enable UNIX support by configuring the Satellite after it has been installed. To do so, select in the top menu bar, then select in the left navigation bar. In the screen that follows, check the Enable Solaris Support box.Click the button to confirm the change.
- Finally, create a base channel to which your client systems may subscribe. Red Hat Network does not provide UNIX content,
satellite-synccannot be used to create the channel.To create a Solaris channel, login to the web interface of the Satellite as either a Satellite Administrator or a certificate authority. Navigate to the Channel tab, followed by the Manage Software Channels from the left navigation bar. Click the create new channel link in the upper right of the resulting screen. Provide a name and label for your new channel, and select either SPARC Solaris or i386 Solaris as the architecture, depending on the architecture of the client.
4.1.7. UNIX Client System Preparation
- Download and install
gzipand the required third-party libraries. - Download the Red Hat Network application tarball from the Satellite to the client and install the contents.
- Next, deploy the SSL certificates required for a secure connection.
- Configure the client applications to connect to the Red Hat Satellite.
4.1.7.1. Downloading and Installing Additional Packages
up2date), which provides the link between your client systems and Red Hat Network. The UNIX-specific version of the Red Hat Update Agent is limited in functionality compared to its Linux counterpart but still enables system registration and facilitates package installs and patches. See Section 4.1.8, “UNIX Client Registration and Updates” for a full description of the tool's options.
Note
bash when first logging into the Solaris client. If the BASH shell is available, it will make the system's behavior as Linux-like as possible.
4.1.7.1.1. Installing Third-Party Packages
gziplibgccopensslzlib
gzip utility is provided by the SUNW gzip package and may be downloaded from http://www.sunfreeware.com.
SUNWgccruntimeSUNWopenssl*SUNWzlib
SMClibgccorSMCgccSMCosslSMCzlib
pkginfo command. For example, to check for a package that contains "zlib" in the name, run the following command:
# pkginfo | grep zlib
Note
libgcc<version>-sol<solaris-version>-sparc-local.gz becomes SMClibgcc after installation
4.1.7.1.2. Configuring the Library Search Path
# crle -c /var/ld/ld.config
-l option resets the value, rather than appending it, so if there already were values set on your system, prepend them to the -l parameter.
# crle -c /var/ld/ld.config -l /other/existing/path:/lib:/usr/lib:/usr/local/lib
# crle -c /var/ld/ld.config -l /other/existing/path:/lib:/usr/lib:/usr/local/lib:/usr/sfw/lib
4.1.7.1.3. Downloading Red Hat Network Client Packages
/var/www/html/pub/ directory of your Satellite. If you are able to use a GUI web browser like Mozilla, navigate to the /pub directory of the Satellite and save the appropriate tarball to your client:
http://your-satellite.example.com/pub/rhn-solaris-bootstrap-<version>-<solaris-arch>-<solaris-version>.tar.gz
ftp to transfer the file from the Satellite to the client.
gzip, decompress the tarball. You should have the following packages:
RHATposslRHATrhnrcfgRHATrhnrcfgaRHATrhnrcfgcRHATrhnrcfgmRHATrhncRHATrhnlRHATrpushRHATsmart
SMClibgcc and SMCosslg may also be included in the tarball.
4.1.7.1.4. Installing the Red Hat Network Packages
pkgadd command. Answer "yes" to any prompts during package install.
# pkgadd -d RHATpossl-0.6-1.p24.6.pkg all # pkgadd -d RHATpythn-2.4.1-2.rhn.4.sol9.pkg all # pkgadd -d RHATrhnl-1.8-7.p23.pkg all ...
Note
-n option for pkgadd to run the command in non-interactive mode. However, this may cause the installation of some packages to fail silently on Solaris 10.
/opt/redhat/rhn/solaris/.
4.1.7.1.5. Including Red Hat Network Packages in the PATH
# PATH=$PATH:/opt/redhat/rhn/solaris/bin # PATH=$PATH:/opt/redhat/rhn/solaris/usr/bin # PATH=$PATH:/opt/redhat/rhn/solaris/usr/sbin # export PATH
# MANPATH=$MANPATH:/opt/redhat/rhn/solaris/man # export MANPATH
# man -M /opt/redhat/rhn/solaris/man <man page>
libgcc, openssl and zlib.
crle -c /var/ld/ld.config -l <current library paths>:/opt/redhat/rhn/solaris/lib
4.1.7.2. Deploying Client SSL Certificates
/pub/ directory of the Satellite's Web server.
- Download the SSL certificate from the
/var/www/html/pub/directory of the Red Hat Satellite onto the client system. The certificate will be named something similar toRHN-ORG-TRUSTED-SSL-CERT. It is accessible via the web at the following URL:https://your-satellite.example.com/pub/RHN-ORG-TRUSTED-SSL-CERT. - Move the client SSL certificate to the Red Hat Network-specific directory for your UNIX variant. For Solaris, this can be accomplished with a command similar to:
mv /path/to/RHN-ORG-TRUSTED-SSL-CERT /opt/redhat/rhn/solaris/usr/share/rhn/
4.1.7.3. Configuring the Clients
- As root, change to the Red Hat Network configuration directory for the system. For Solaris, the full path is
/opt/redhat/rhn/solaris/etc/sysconfig/rhn/. - Open the
up2dateconfiguration file in a text editor. - Find the
serverURLentry and set its value to the fully qualified domain name (FQDN) of your Red Hat Satellite:serverURL[comment]=Remote server URL serverURL=https://your-satellite.example.com/XMLRPC
- Ensure the application refers to the Red Hat Satellite even when SSL is turned off by also setting the
noSSLServerURLvalue to the Satellite:noSSLServerURL[comment]=Remote server URL without SSL noSSLServerURL=http://your-satellite.example.com/XMLRPC
- With the
up2dateconfiguration file still open, find thesslCACertentry and set its value to the name and location of the SSL certificate described in Section 4.1.7.2, “Deploying Client SSL Certificates”, for example:sslCACert[comment]=The CA cert used to verify the ssl server sslCACert=/opt/redhat/rhn/solaris/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
4.1.8. UNIX Client Registration and Updates
4.1.8.1. Registering UNIX Systems
rhnreg_ks command to accomplish this; the use of activation keys for registering your systems is optional. These keys allow you to predetermine settings within Red Hat Network, such as base channels and system groups, and to apply those automatically to systems during their registration.
- Log into the Satellite's web interface and click the Systems tab in the top navigation bar followed by Activation Keys in the left navigation bar. Then click the create new key link at the top-right corner of the page.
- On the following page, select the base channel you created at the end of Section 4.1.6, “Satellite Server Preparation and Configuration”.
- After creating the key, click its name in the Activation Keys list to enhance its Red Hat Network settings by associating software and configuration channels and system groups.
- Open a terminal on the client system to be registered and switch user to root.
- Use
rhnreg_ksalong with the--activationkeyoption to register the client with the Satellite. The string of characters that make up the key may be copied directly from the Activation Keys list on the website. The resulting command will look something like the following:rhnreg_ks --activationkey=b25fef0966659314ef9156786bd9f3af
- Go back to the website, click the name of the activation key, and ensure the new system appears within the Activated Systems tab.
4.1.8.2. Obtaining Updates
4.1.8.2.1. Uploading Packages to the Satellite
solaris2mpm to translate Solaris packages, patches, and patch clusters to a format that the Satellite can understand.
4.1.8.2.1.1. solaris2mpm
solaris2mpm is part of Red Hat Network Push for Solaris. The content that is pushed to a Solaris channel on the Satellite must first be in .mpm format.
Note
/tmp/ will be used for this purpose. However, the --tempdir option allows you to specify another directory if necessary.
# solaris2mpm RHATrpush-3.1.5-21.pkg RHATrpush-3.1.5-23.pkg Opening archive, this may take a while Writing out RHATrpush-3.1.5-21.sparc-solaris.mpm Opening archive, this may take a while Writing out RHATrpush-3.1.5-23.sparc-solaris.mpm
name-version-release.arch.mpm
Table 4.2. solaris2mpm options
| Option | Description |
|---|---|
--version
|
Displays the program's version number and exits
|
-h, --help
|
Displays this information and exits
|
-?, --usage
|
Prints program usage information and exits
|
--tempdir=<tempdir>
|
Temporary directory to work from
|
--select-arch=<arch>
|
Selects the architecture (i386 or SPARC) for multi-arch packages.
|
4.1.8.2.1.2. rhnpush with .mpm Files
rhnpush works like the standard utility, but with the added ability to handle .mpm files. Below is a usage example:
% rhnpush -v --server testbox.example.com --username myuser -c solaris-8 \ RHATrpush-3.1.5-*.mpm Red Hat Network password: Connecting to http://testbox.example.com/APP Uploading package RHATrpush-3.1.5-21.sparc-solaris.mpm Uploading package RHATrpush-3.1.5-23.sparc-solaris.mpm
Note
4.1.8.2.2. Updating Through the Web Interface
4.1.8.2.3. rhnsd
rhnsd daemon, which instructs the client system to check in with Red Hat Network, automatically starts at boot time. On Solaris systems, rhnsd does not start at boot time by default. It can be started from the command line in this way:
rhnsd --foreground --interval=240
rhnsd is /opt/redhat/rhn/solaris/usr/sbin/rhnsd. Below are the available options for rhnsd on Solaris:
Table 4.3. rhnsd Options
| Option | Description |
|---|---|
-f, --foreground
|
Run in foreground
|
-i, --interval=MINS
|
Connect to Red Hat Network every MINS minutes
|
-v, --verbose
|
Log all actions to syslog
|
-h, --help
|
Give this help list
|
-u, --usage
|
Give this help list
|
-V, --version
|
Print program version
|
4.1.8.2.4. Updating From the Command Line
up2date command. The most significant difference is the absence of all options regarding source files. See Section 4.1.8.2.4, “Updating From the Command Line” for the precise list of options available for UNIX systems.
Table 4.4. Update Agent Command Line Arguments
| Argument | Description |
|---|---|
--version | Show program version information. |
-h, --help | Show this help message and exit. |
-v, --verbose | Show additional output. |
-l, --list | List the latest versions of all packages installed. |
-p, --packages | Update packages associated with this System Profile. |
--hardware | Update this system's hardware profile on Red Hat Network. |
--showall | List all packages available for download. |
--show-available | List all the packages available that are not currently installed. |
--show-orphans | List all the packages currently installed that are not in channels the system is subscribed to. |
--show-channels | Show the channel names along with the package names where appropriate. |
--installall | Install all available packages. Use with --channel. |
--channel=CHANNEL | Specify which channels to update from using channel labels. |
--get | Fetch the package specified without resolving dependencies. |
4.1.9. Using Remote Commands
4.1.9.1. Enabling Commands
script, the file must be named run, and both must be located in the /etc/sysconfig/rhn/allowed-actions/ directory specific to your UNIX variant.
mkdir -p /opt/redhat/rhn/solaris/etc/sysconfig/rhn/allowed-actions/script
touch /opt/redhat/rhn/solaris/etc/sysconfig/rhn/allowed-actions/script/run 
Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.