lucompare(1M)
NAME
lucompare - compare boot environments
SYNOPSIS
/usr/sbin/lucompare [-i infile | -t] [-o outfile] BE_name
[-X]
/usr/sbin/lucompare [ -C file [-o outfile]] [-X]
DESCRIPTION
The lucompare command is part of a suite of commands that
make up the Live Upgrade feature of the Solaris operating
environment. See live_upgrade(5) for a description of the
Live Upgrade feature.
The lucompare command compares the contents of the current
boot environment (BE) with the contents of another BE. With
the -C option, lucompare compares file statistics so that
you can determine which files have changed on a BE since a
specified time, such as the creation time of a BE. A speci-
fied BE must be inactive and in the complete state, as
reported by the lustatus(1M) command. Also, a BE cannot have
a copy job scheduled, which is also reported by
lustatus(1M). A specified BE cannot have any partitions
mounted with lumount(1M) or mount(1M).
For each file system defined for a specified BE, lucompare
compares all files with the files with the same pathnames in
the current BE. The files present in the active BE, but not
in the specified BE, and vice-versa, are reported. You also
have the option to specify a list of files to be compared.
If you specify the -C option, instead of doing an absolute
comparison of the current BE with a target BE, lucompare
compares the files in a specified BE with the list of files
recorded in a file. When a BE is created, lucreate(1M)
creates a file named :<BE_name> in /etc/lu/compare. You can
use the -C option to compare the files in a specified BE to
this snapshot in /etc/lu/compare or you can compare the BE
to a file previously created with the -o option. Comparing a
BE to its own snapshot in /etc/lu/compare enables you to
determine which files have changed on the BE since its crea-
tion.
By default, the output of lucompare is written to stdout.
With the -C option, you must use the -o option to specify an
output file. The output for lucompare is a list of files
that differ in permissions, owner, group, or sum, along with
the reason for difference. The output format is shown below:
> active BE
< BE_name
reason
> file_name:owner:group:number_of_links:mode:type: size
or major_minor number:checksum
< file_name:owner:group:number_of_links:mode:type: size
or major_minor number:checksum
The above fields are obtained from the stat(2) structure of
the file.
The type field can be one of the following:
SYMLINK
symbolic link
FIFO FIFO file
CHRSPC
character special
BLKSPC
block special
DIR directory
REGFIL
regular file
UNKNOW
unknown file type
lucompare computes checksums only if the file on the speci-
fied BE matches its counterpart on the active BE in all of
the fields described above. If the checksums differ, lucom-
pare appends the differing checksums to the entries for the
compared files.
The lucompare command requires root privileges.
OPTIONS
The lucompare command has the following options:
-C file
Compare file statistics of BE with those recorded in
file. file can be the snapshot created at BE creation
time, /etc/lu/compare/:<BE_name>, or a file previously
created with the -o option. You must use the -o option
with this option.
-i infile
Compare files listed in infile. The files to be com-
pared should be an absolute filename. If the entry in
the file is a directory, then comparison is recursive
with respect to the directory. Mutually exclusive of
-t.
-o outfile
Send output of differences to outfile. You must use
this option if you use -C.
-t Compare only nonbinary files. This is achieved by per-
forming a file(1) command on each file in the tree
walk and only comparing text files. Mutually exclusive
of -i.
-X Enable XML output. Characteristics of XML are defined
in DTD, in /usr/share/lib/xml/dtd/lu_cli.dtd.<num>,
where <num> is the version number of the DTD file.
OPERANDS
BE_name
Name of the BE to which the active BE will be com-
pared. You cannot specify a BE that is involved in
another Live Upgrade operation, or specify a BE for
which you have mounted partitions (using lumount(1M)
or mount(1M)).
EXAMPLES
Example 1: Checking Differences Since BE Creation
The following command lists the differences in the BE s8u5
between its creation time and the present.
# lucompare -C /etc/lu/compare/:s8u5 -o /var/tmp/compare.out s8u5
Note that /etc/lu/compare/:s8u5 is the file created by
lucreate upon creation of a BE. The list of differences is
sent to /var/tmp/compare.out.
EXIT STATUS
The following exit values are returned:
0 Successful completion.
>0 An error occurred.
FILES
/etc/lutab
list of BEs on the system
/usr/share/lib/xml/dtd/lu_cli.dtd.<num>
Live Upgrade DTD (see -X option)
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWluu |
|_____________________________|_____________________________|
SEE ALSO
lu(1M), luactivate(1M), lucancel(1M), lucreate(1M),
lucurr(1M), ludelete(1M), ludesc(1M), lufslist(1M),
lumake(1M), lumount(1M), lurename(1M), lustatus(1M),
luupgrade(1M), lutab(4), attributes(5), live_upgrade(5)
NOTES
The lucompare command makes no attempt to reconcile any
differences it detects between BEs.
Man(1) output converted with
man2html