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

Digital

NAME

fverify − verify software subsets

SYNOPSIS

fverify [ −yn ]

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. Invoking fverify with no flags causes it to report errors to the standard output and prompt the user 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 user id, group 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

−n Specifies error reporting only. The fverify command reports errors and does not perform any fixes. 

−p Specifies partial checking. The fverify command does not report changes in size or checksum on files that are marked as volatile. All other changes, including uid, gid, permissions, and file tyuupe, are reported. 

−y Specifies noninteractive fixing. The fverify command fixes permissions, uids, and gids on any files which have incorrect values for these attributes. No user input is required. 

RESTRICTIONS

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

Because the subset inventories give file names as relative paths, fverify must be in 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 may 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 excample 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 explains why. 

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
There is a checksum error on pathname.  The values n and m are the actual and expected values. 

pathname: size n should be m
The size of file pathname is not as expected. The numbers n and m are the actual and expected values. 

pathname: gid n should be m
The group id for pathname is not as expected. The group ids n and m are the actual and expected values. 

pathname: uid n should be m
The user id for pathname is not as expected. The user ids n and m are the actual and expected values. 

pathname: permissions string1 should be string2
The permissions for pathname are not as expected.  String1 and string2 are the actual and expected permissions. 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 will attempt to create the directory. 

cannot correct pathname (error-message)
A problem reported with pathname could not be corrected. The error-message explains why. 

pathname corrected
A problem with pathname was successfully corrected. 

Cannot create dir pathname (error-message)
The fverify program could not create a directory it was attempting to create.  The accompanying error-message explains why. 

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./∗.inv Subset inventory files

/var/adm/smlogs/fverify.log
Log File

RELATED INFORMATION

Commands: ls(1), setld(8)

File formats: stl_inv(4)

Guide to Programming Support Tools

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