Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ls(1)

setld(8)

stl_inv(4)

fverify(8)  —  Maintenance

NAME

fverify − verify software subsets

SYNOPSIS

/usr/lbin/fverify [ −npy ]

DESCRIPTION

The fverify command reads subset inventory records from standard input and verifies that the attributes for the files on the system match the attributes listed in the corresponding records.  When invoked with no flags, fverify reports errors to standard output and prompts for confirmation before making corrections. 

Missing files and inconsistencies in file size, checksum, user ID, group ID, permissions, and file type are reported.  If inconsistencies in ID or permissions are detected, fverify asks if they are to be corrected.  If a missing file is a directory, it is created.  All errors and informational messages are logged to the /var/adm/smlogs/fverify.log file. 

Files in a subset can be marked as volatile.  These files (for example, /etc/passwd) are expected to change after installation.  When used with the −p flag, fverify does not complain if these files have a size or checksum that does not match the product’s inventory. 

The setld utility uses fverify when installing subsets to guarantee correct installation. 

FLAGS

−nSpecifies error reporting only.  The fverify command reports errors but makes no fixes. 

−pSpecifies partial checking.  The fverify command does not report changes in size or checksum for files marked as volatile.  All other changes are reported. 

−ySpecifies noninteractive fixing.  The fverify command fixes permissions, uids, and gids of any files that have incorrect values for these attributes.  No user input is required. 

RESTRICTIONS

Problems with file size, type, and checksum cannot be corrected.  Errors in permissions for symbolic links are neither reported nor fixed. 

Because subset inventories give file names as relative paths, fverify must be invoked from the root directory to which the software is installed. 

Many of the files on the system cannot be read or modified without appropriate privilege.  Attempting to run fverify without appropriate privilege can result in a great number of access errors. 

EXAMPLES

The following command sequence reports verification problems in the hypothetical OATDCB100 subset:

cd /
/usr/lbin/fverify -n < /usr/.smdb./OATDCB100.inv

The previous example reports changes to volatile files.  The following command sequence ignores changes to these files:

cd /
/usr/lbin/fverify -np < /usr/.smdb./OATDCB100.inv

The following command sequence fixes all problems in the same subset without requiring user intervention:

cd /
/usr/lbin/fverify -y < /usr/.smdb./OATDCB100.inv

The following command sequence fixes all problems in the same subset interactively:

cd /
/usr/lbin/fverify < /usr/.smdb./OATDCB100.inv

ERRORS

fverify: out of memory

Not enough memory is available from the system. 

pathname: cannot stat (error-message)

The file pathname is listed in the inventory but is not on the system.  The error-message provides further information. 

pathname: file type x should be y

The file is listed in the inventory as being of type y, but the copy of the file on the disk is type x.  The file type codes are:

bBlock device

cCharacter device

dDirectory containing one or more files

fRegular file

lHard link

pNamed pipe (FIFO)

sSymbolic link

=UNIX domain socket

pathname: checksum n should be m

The checksum of pathname was expected to be m but is actually n. 

pathname: size n should be m

The size of file pathname but was expected to be m but is actually n. 

pathname: gid n should be m

The group ID for pathname was expected to be m but is actually n. 

pathname: uid n should be m

The user ID for pathname was expected to be m but is actually n. 

pathname: permissions string1 should be string2

The permissions for pathname were expected to be string2 but are actually string1.  The format of string1 and string2 is the same as that used by the ls command. 

Creating directory pathname

The directory pathname is listed in the input inventory but does not exist on the system.  The fverify command attempts to create it. 

cannot correct pathname (error-message)

A problem reported with pathname could not be corrected.  The error-message explains the failure. 

pathname corrected

A problem with pathname was successfully corrected. 

Cannot create dir pathname (error-message)

The fverify program failed in its attempt to create a directory that it found missing.  The error-message explains the failure. 

n verification errors encountered.
m corrections performed.

Before exiting, the fverify program prints these statistics describing what had been done. 

If fverify executes correctly, its exit status is the total number of verification errors detected minus the total number of successful fixes. 

FILES

/usr/.smdb./∗.invSubset inventory files

/var/adm/smlogs/fverify.logLog File

RELATED INFORMATION

Commands:  ls(1), setld(8)

File formats:  stl_inv(4)

Guide to Preparing Product Kits

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026