Book Image

Oracle Solaris 11: First Look

By : Philip P. Brown
Book Image

Oracle Solaris 11: First Look

By: Philip P. Brown

Overview of this book

Oracle Solaris provides innovative, built-in features that deliver breakthrough high availability, advanced security, efficiency, and industry-leading scalability and performance to help businesses grow. "Oracle Solaris 11: First Look" covers the new features and functionality of Oracle Solaris 11 and how these new features and improvements will make it easier to deploy services to the enterprise while improving performance and reducing total cost of ownership.This book starts with coverage of Image Packaging System and the new installation methods. It then moves swiftly to network configuration. The book also includes some security features and improvements.  
Table of Contents (19 chapters)
Oracle Solaris 11: First Look
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
IPS Package Reference
New ACL Permissions and Abbreviations
Index

Package naming schemes


Packages are now named and referred to with a naming scheme that is somewhat similar to the SMF style naming introduced in Solaris 10.

Package references in the IPS format look like this:

pkg:/somebase/leafname@version,num-here
pkg://publisher/somebase/leafname@version,num-here

Specific examples of the previously mentioned IPS format are:

pkg:/runtime/java/[email protected]
pkg://solaris/runtime/java/[email protected]

Note that even though both the standard Solaris repository URL and the publisher component from the previously mentioned pkg FMRI have the string solaris in them, they are in completely different namespaces. Changing one would not affect the other.

The good news in this confusion is that, as with SMF, you can use short forms most of the time. For example, the following commands all give the same output:

  • pkg list pkg://solaris/runtime/java/jre-6

  • pkg list pkg:/runtime/java/jre-6

  • pkg list /runtime/java/jre-6

  • pkg list runtime/java/jre-6

  • pkg list jre-6

In summary, for most uses, you can ignore everything to the right of the @ symbol in the FMRI, and to the left of any forward slashes (/) in the FMRI, in order to get a short form name.

The bad news is that, sometimes, a short form that you might expect to work does not work. So, if an abbreviated form turns up nothing for a command, make sure to try the long form as well, and/or wildcards.

Tip

For most purposes, you can ignore the version part after the @ sign, even for long form purposes. The version part only really matters at times when you have to consider whether or not to update a package.

Understanding the quirks of pkg name references

Note that, at the current moment in time, Oracle uses package naming and version information inconsistently.

First of all, the same package may have two different long forms. Taking a package at random, let's examine the installed gzip package. The first two listings in the following output show it as /compress/gzip.

However, the full information on the package, via pkg info, gives a longer reference for the gzip package (calling it an FMRI), with the additions of /solaris and extra numbers in the version part of it. More details on version numbers will be given later on, in the next section.

Once again, there is good news and bad news. The bad news is that these inconsistencies exist when they shouldn't. The good news is that the pkg system is somewhat flexible about accepting any of the variants as input most of the time. So, reading the output becomes simpler, if you can train yourself as to which parts can be safely ignored.

A comparison between the different output types is as follows:

$ pkg search gzip
PACKAGE
pkg:/compress/[email protected]

$ pkg list gzip
NAME             VERSION
compress/gzip    1.3.5-0.175.0.0.0.2.537

$ pkg info gzip|grep FMRI
FMRI
pkg://solaris/compress/[email protected],5.11-0.175.0.0.0.2.537:20111019T091246Z

As mentioned previously, the @ version parts can usually be ignored. So the thing of interest then becomes the //solaris component. This is an artifact of the network source of the package.

In this case, solaris is not the product or package name, but what Oracle chose to name the publisher of this set of packages in its repository. The full output of the pkg list gzip command would show this as the case.

99 percent of Solaris users will most likely be using only one publisher (solaris), so this component can usually be ignored.

Understanding pkg FMRI version fields

Note that the version indicator (the stuff to the right of the @ sign) must be strictly numeric at this time. This may cause problems if one tries to match some "freeware" programs up with this scheme, where letters (a, b, c, and d) are used as a part of the version number scheme as well.

As demonstrated earlier, the version part is unfortunately used inconsistently by Oracle at this time.

Some subcommands of the pkg command display it as @{release}-{branch}. For example:

pkg:/compress/[email protected]

For other subcommands, the same package may be displayed as @{release},{build}-{branch}. For example:

pkg://solaris/compress/[email protected],5.11-0.175.0.0.0.2.537

For packages provided with Solaris itself, the {build} section (here, 5.11) is described by Oracle as being the version of the OS under which it was compiled, in this case, Solaris 11, or SunOS 5.11.

The 0.175 in Oracle Solaris packages represents a particular build number of Solaris branch that folks external to Oracle might think of as the subrelease identifier or perhaps similar to a patch level. All packages associated with that subrelease of Solaris seem to get a branch identifier mostly in the same numeric range. An earlier release of Solaris 11 seems to have mostly 0.151 as its associated branch identifier, whereas the 11/11 release seems to mostly have 0.175.0 as a branch identifier Solaris 11.1 uses 0.175.1.