versions(1M) versions(1M)
versions - software versions tool
versions [ -abndvIMV ] [ -r root ] [ display ] [ name ... ]
versions [ -ckmstuvxBMSUV ] [ -r root ] [ listtype ] [ user ] [ name ... ]
versions [ -vFV ] [ -r root ] remove name ...
versions [ -vFV ] [ -r root ] removehist patch name ...
versions calls the programs showprods, showfiles, and (in the case of
removing software with versions remove|removehist), inst. Users may wish
to use these programs directly, instead of versions, since these programs
provide a more complete and consistent set of capabilities.
To find out what underlying command versions would execute with a given
set of arguments, use the -V option ahead of other options, for example,
versions -V remove ftn.sw pas.sw.
The versions command has three functions:
- (showprods): It displays information about the software that is
currently installed on your system and the software that has been
available for installation, but is not presently installed. This
information is presented at the product, image, and subsystem levels
(see the Definitions section).
- (showfiles): It displays lists of files on your system and information
about those files.
- (inst): It removes installed software from your system.
The synopsis for each of these three uses of the versions command is
shown above and the functions are discussed in detail in the sections
that follow. In addition, the Definitions section defines some terms
that are key to understanding and using versions. The section called
Updating Configuration Files explains how to use versions to identify and
modify files that require site-specific modifications after new software
is installed.
Definitions [Toc] [Back]
The name argument to versions is a product, image, or subsystem. A
product is a collection of files that inst installs on your system. This
collection of files is typically a Silicon Graphics software option such
as the Network Filesystem (NFS). Products have short names that are used
for installation purposes (for example, nfs).
Page 1
versions(1M) versions(1M)
The files in a product are organized into a three-level hierarchy for
ease of installation. The highest level is the product level, the next
level is the image level, and the third level is the subsystem level.
Thus, the files that make up a product such as NFS are grouped into
subsystems. The names of these subsystems reflect the hierarchy:
product.image.subsystem. Some examples for NFS are nfs.sw.nis and
nfs.man.relnotes.
When you enter a name argument to versions, you can enter a product name
(for example, nfs), an image name (for example, nfs.sw) or a subsystem
name (for example, nfs.sw.nis), depending on what parts of a product you
are interested in. You can also use * as a wildcard in name, but it must
be escaped with double quotes (") if you are using versions from the
shell. For example, if you are at the shell and you want to list
information about all of the installed subsystems that have an image name
of man, you would enter the command:
versions "*.man.*"
Note that the wildcard (*) character does not match the . character so
the following command will only list subsystems that have man in the
top-level product name:
versions "*man*"
An example of using wildcards from within inst is this command to list
the sw images in eoe:
versions eoe.sw.*
All of the files on a workstation can be divided into two categories:
installed files and user files. The files in a product are called
installed files and are put on your system by inst. All other files on
your system, no matter how they got there, are called user files. There
are two types of installed files, system files, and configuration files.
System files are modified by the user of the system only in unusual
circumstances. Configuration files, on the other hand, are very likely
to need modification because they contain information that is often
machine-specific or site-specific. On diskless systems, installed files
are also shared or unshared as well as being system files or
configuration files.
Because configuration files often contain modifications, inst treats them
specially during the installation process. If they have not been
modified, inst removes the old file and installs the new version during
software updates. For configuration files that have been modified, one
of three things occurs:
- The new version is not installed at all.
Page 2
versions(1M) versions(1M)
- The new version is installed and the old version is renamed by adding
the suffix .O (for older) to the name.
- The new version is put in a file whose name is created by adding .N
(for newer) to the original name.
The section, Updating Configuration Files, discusses .O and .N files in
more detail.
Using versions to List Products, Images, and Subsystems
With no command line options or arguments, versions displays one
installed software product, image, or subsystem per line for all products
currently installed on the system.
- The first column contains an indication of the installation status of
the product, image, or subsystem listed on that line. When no command
line options are given, the installation status is I (installed).
- The second column gives the name of the product, image, or subsystem.
- The third column gives the date of installation.
- The fourth column gives a description of the product, image or
subsystem.
The options that follow allow you to change the output:
-I (installed) List currently installed products, images, and
subsystems only. (This is the default behavior.)
-a (all) List all the products, images, and subsystems that are
installed, that have been installed and then removed, or were
available for installation, but not installed. This is also known
as "all of the subsystems inst has seen since the last time you made
filesystems". Products and images that have at least one subsystem
installed are marked I, otherwise their first column is blank.
Installed subsystems are marked I. Subsystems that have been
installed and later removed are marked R. Subsystems that have
never been installed are blank in the first column. Older versions
of products that have been replaced by a newer version of the
product do not appear on any versions list.
-n (number) Show the internal version number rather than the date it
was installed.
-d (date) Show the creation date rather than the date it was
installed.
-v (verbose) Include subsystems in the output. (This is the default.)
Page 3
versions(1M) versions(1M)
-b (brief) Display only products.
-M (more) Do not use the built-in paging mechanism (similar to
more(1)) after each screenful of output.
The -r option allows you to operate on an IRIX tree rooted at root. The
default root directory while running under IRIX is /, and while in the
miniroot is, /root (see inst(1M)). You might have a different root
directory for diskless prototype trees or for test installations that
have been done somewhere other than the default of the system's root.
The display argument explicitly requests one line per product, image, and
subsystem type output from versions. It is the default behavior in the
absence of a listtype argument, the argument remove, or one of the
options ckmsuxSU.
The possible values for the name argument are discussed in the
Definitions section above. If no name is given, the default is to
display all currently installed software.
Using versions to List Installed Files [Toc] [Back]
The second form of the versions command displays lists of filenames. The
combination of single character options, listtype, the optional user
argument, and optional names determines the list of files that is
displayed. For some values of listtype, additional information is also
displayed. If you are not superuser, you may not be able to access some
files.
The single character options, listtype arguments, and other arguments for
this form of versions are:
-m (modified) List only modified installed files. There are three
types of modified installed files: configuration files that the
user has changed to be system or site-specific, files that were
modified automatically as part of the installation process, and
other installed files that the user has changed.
-u (unmodified) List only unmodified installed files.
-B (bad) List only deleted or unreadable installed files.
-c (configuration) List only installed configuration files.
-s List only installed system files.
-t changed
Test for the presence of configuration files that need to be merged
or updated. versions -t changed invokes showfiles -c -t -H, and
returns an exit status of zero if any configuration files with an
associated .N or .O version were found. Otherwise a non-zero status
is returned. See the showfiles(1M) reference page for a complete
description of this option.
Page 4
versions(1M) versions(1M)
-S (shared) List only diskless client shared files.
-U (unshared) List only unshared files.
-k (checksums) Calculate checksums of user files in the long listing.
-M (more) Do not use the built-in paging mechanism (similar to
more(1)) after each screenful of output.
-r root
(root) Use an IRIX tree rooted at root. The default root directory
while running under IRIX is /, and while in the miniroot is /root
(see inst(1M)). You might have a different root directory for
diskless prototype trees or for test installations that have been
done somewhere other than the default of the system's root. If this
option is not given and the rbase environment variable is set, its
value is used, otherwise / is used.
list List installed files. This is the default listtype if no listtype
is given, but one of options ckmusxSU is given.
long List installed files and include the file type, the checksum (by sum
-r), the size in blocks at time of installation, the subsystem name,
and flags. The file types are:
f Plain file
d Directory
b Block special
c Character special
l Symbolic link
p FIFO, also known as, named pipe
The flags are:
c Configuration file
t Orphaned configuration file (it was installed with a subsystem
that has since been removed)
m File is machine-specific (see inst(1M) -m)
user List user files. This argument can be used by itself, or with the
list or long arguments.
config
List all installed configuration files and any corresponding .N and
.O files.
changed
List installed configuration files that have a corresponding .O or
.N file and their respective .O or .N files.
Page 5
versions(1M) versions(1M)
name The possible values for the name argument are discussed in the
Definitions section above. If no name is given, the default is to
display all currently installed files that meet the criteria of the
options and arguments.
Using versions to Remove Products, Images, and Subsystems
The versions command with the remove argument, and one or more name
arguments, is used to remove most of the files of one or more subsystems.
The files that are not removed are modified configuration files.
The versions command with the removehist argument, and one or more patch
name arguments, is used to remove the patch file history under
$rbase/var/inst/patchbase. This command should only be used if the user
desperately needs to free up disk space since the patch cannot be removed
or upgraded by another patch until the patch history is restored.
Failure to restore the patch base history will result in a conflict when
removing or upgrading the patch. Thus, the applicable patch history
files should be backed up prior to executing this command. The patch
history will then need to be restored when upgrading or removing the
patch.
There is one notable case when the patch history need not be restored :
when the associated base subsystem is also being removed. For example,
if upgrading to a newer version of eoe.sw.base, the base history for the
installed eoe.sw.base patches need not be restored since eoe.sw.base will
also be removed.
If removal of the indicated subsystems causes conflicts, versions refuses
the action, unless the -F option is given, in which case no system
integrity checking is done, so it is possible to remove subsystems that
are critical to the operation of IRIX, the window system or applications
that you want to use. The -F option will also suppress the warning
prompt that normally appears when the removehist argument is used.
You must be superuser to use remove or removehist.
Updating Configuration Files [Toc] [Back]
As discussed in the Definitions section, some files in a product are
called configuration files and are handled specially during installation
because they contain system or site-specific information. As a result of
this, .O (older) and .N (newer) versions of configuration files may be
left on your system after an installation.
When you reboot your system, a check for .O and .N files is done. If any
are present, a message is displayed suggesting that you merge
configuration files in cases where there are two versions. To do this,
first enter the command:
versions changed
If the output contains any .O configuration files:
Page 6
versions(1M) versions(1M)
The .O version of the configuration file is your earlier version. The
no-suffix version contains changes that are required for compatibility
with the rest of the newly installed software, that increase
functionality, or that fix bugs. You should use dif
to compare the two versions of the files and transfer information that
you recognize as machine or site-specific from the .O version to the
no-suffix version.
If you have any .N configuration files:
The .N version of the configuration file is the new version. It
contains changes or new features that can be added to the no-suffix
version of the configuration file at your option. You should use
diff(1) or gdiff(1) to compare the two versions of the files and add
changes that appeared in the new software from the .N version to the
no-suffix version if you want them. Note: if you did not merge
configuration files after a previous installation, you should compare
the timestamps on the files to make sure that the .N file is really a
more recent version of the file. A shell command such as ls -l file
file.N will display the modification time of each file.
If you have both a .O and a .N version of a particular file:
This indicates that either the .O file or the .N file is leftover from
a previous installation session, and was never merged. Use caution,
since the .N file might actually be older than the .O file. Use a
command such as ls -l file file.O file.N to display the modification
time of each file, and to determine which version of the file was most
recently installed by inst(1).
After you have examined the .O and .N configuration files and made any
changes you want, you can delete the .O and .N versions of the
configuration files. If you want to keep them, you should rename them
because they might be removed automatically during the next software
installation. If you remove all of the .O and .N configuration files,
then no message about configuration files appears when you boot your
system. The message also stops appearing even if .O or .N files continue
to exist after some number of reboots.
versions remove fails if there is no space in /usr to create temporary
files.
/var/inst/hist binary file containing the file-level installation
database of your machine
/var/inst/product binary files containing the product-level
installation database of your machine
/var/inst/* various other files used by inst, swmgr, showprods,
and showfiles
Page 7
versions(1M) versions(1M)
inst(1M), showfiles(1M), showprods(1M), swmgr(1M).
IRIX Admin: Software Installation and Licensing
PPPPaaaaggggeeee 8888 [ Back ]
|