Index Index for
Section 8
Index Alphabetical
listing for V
Bottom of page Bottom of
page

verify(8)

NAME

verify - Checks the AdvFS on-disk metadata structures

SYNOPSIS

/sbin/advfs/verify [-l | -d] [-v | -q] [-t] [-a | -f] [-F] [-D] domain_name

OPTIONS

-a Checks an active domain. All filesets in the domain must be mounted. -d Deletes lost files (that is, files with no directory entry). -D Checks a domain that has been previously mounted with the -o dual option of the mount command. -f Attempts to fix some corruptions found in the domain; deletes any directory entries that do not have associated files; deletes files that have storage bitmap or extent map problems; corrects some inconsistencies in a storage bitmap. -F Use this option with caution only when the domain's fileset(s) will not mount and running verify without the -F option exits with the message "verify: can't get set info for domain". When the -F option is used, AdvFS reinitializes the domain transaction log without recovery. As a result, no domain recovery will occur for previously incomplete operations (which can cause data corruption). -l Creates a hard link to a lost file in the /<mountpoint>/lost+found directory. -q Prints minimal file status information. -t Displays the mcell totals. -v Prints file status information. Selecting this option slows down the verify procedure and creates a large volume of output information.

OPERANDS

domain_name Specifies the file domain.

DESCRIPTION

The verify command mounts all the filesets in a domain at temporary mount points to process them and unmounts them when finished. If you have chosen the -a option, existing mount points will be retained. The command checks on-disk structures such as the bitfile metadata table (BMT), the storage bitmaps, the tag directory, and the frag file for each fileset. It verifies that the directory structure is correct and that all directory entries reference a valid file (tag) and that all files (tags) have a directory entry. The verify command checks the storage bitmap for double allocations and missing storage. It checks that all mcells in use belong to a bitfile and that all bitfiles have all of their mcells. The verify command checks the consistency of free lists for mcells and tag directories. It checks that the mcells pointed to by tags in the tag directory match the corresponding mcells. For each fileset in the specified file domain, the verify command checks the frag file headers for consistency. For each file that has a fragment, the frag file is checked to ensure that the frag is marked as in use.

RESTRICTIONS

You must be the root user to use this command. If you want to run the verify command on the root file domain, choose the -a option to view diagnostic warnings, or boot from another disk or installation CD and use the -f or -d option as shown in the Example section. It is recommended that you run the verify command with the -f option and unmount all filesets in the file domain. This option attempts to repair certain types of metadata inconsistencies and allows the most complete recovery. If you choose the -a option, not all verification tests will be run and no fixes will be made. In addition, if file system activity is occurring, the verify command may report erroneous diagnostic warnings. This is because the utility cross-checks metadata files and, if these are changing, inconsistencies may appear that do not actually exist. Therefore, if you choose the -a option, it is a good idea to run in single-user mode, if possible, and to restrict system activity. If you run the verify command on a fileset that has any other file system (AdvFS or otherwise) mounted on it, an error may result. If you have a fileset erroneously labeled as UFS and it overlaps a fileset labeled AdvFS, an error results. You can recover from this error by changing the erroneously-labeled fileset's fstype field from ufs to unused with the disklabel -s command. After changing the disk label, run the verify command. If the -F option is specified, the verify command mounts the fileset using the mount command with the -d option. Because no recovery is performed, your file domain may become inconsistent. Choose the -D option to run the verify command if the file domain has ever been dual mounted. Running the verify command without the -D option on a domain that has been dual mounted will report setID conflicts for frag files. Running the verify command with the -D option will skip the frag file setID checks.

EXIT STATUS

The verify utility returns a 0 (zero) on success if it did not find any corruption and a positive integer on success if it did find corruption. The verify utility returns a -1 on failure.

EXAMPLES

The following example verifies the file domain dmnx with the filesets setx and sety: # /sbin/advfs/verify dmnx +++ Domain verification +++ Domain Id 2f9eb70a.000f1db0 Checking disks ... Checking storage allocated on disk /dev/disk/dsk10g Checking storage allocated on disk /dev/disk/dsk10a Checking mcell list ... Checking mcell position field ... Checking tag directories ... +++ Fileset verification +++ +++ Fileset setx +++ Checking frag file headers ... Checking frag file type lists ... Scanning directories and files ... 300 Scanned 307 directories. Scanning tags ... 1100 Scanned a total of 1135 tags. Searching for lost files ... 1100 Searched 1135 tags, no lost files found. +++ Fileset sety +++ Checking frag file headers ... Checking frag file type lists ... Scanning directories and files ... 900 Scanned 911 directories. Scanning tags ... 5100 Scanned a total of 5173 tags. Searching for lost files ... 5100 Searched 5173 tags, no lost files found. # To run the verify command with either the -f or -d options on a root domain, you must boot off another disk or CD-ROM as follows: 1. Boot from your installation CD then exit the installation to the UNIX shell or boot from another system disk. 2. Change to the /etc/fdmns directory: # cd /etc/fdmns 3. Create a temporary domain directory: # mkdir verify_root 4. Change to the newly created directory: # cd verify_root 5. Create a symbolic link in this directory to the disk partition that contains the domain you wish to run the verify command on: # ln -s /dev/disk/dsk3a dsk3a 6. Change back to the root directory (/): # cd / 7. Run the verify command on the temporary domain: # /sbin/advfs/verify -f verify_root 8. Delete the temporary domain # rm -rf /etc/fdmns/verify_root

FILES

/sbin/advfs/verify

SEE ALSO

Commands: fsck(8), mount(8), showfdmn(8), showfsets(8), showfile(8) Files: advfs(4)

Index Index for
Section 8
Index Alphabetical
listing for V
Top of page Top of
page