man(1) Manual page archive


NAME
     icheck - file system storage consistency check

SYNOPSIS
     icheck [ -s ]  [ -b numbers ] [ filesystem ]

DESCRIPTION
     Icheck examines a file system, builds a bit map of used
     blocks, and compares this bit map against the free list
     maintained on the file system.  If the file system is not
     specified, a set of default file systems is checked.  The
     normal output of icheck includes a report of

         The number of blocks missing; i.e. not in any file nor
         in the free list,
         The number of special files,
         The total number of files,
         The number of large and huge files,
         The number of directories,
         The number of indirect blocks, and the number of
         double-indirect blocks in huge files,
         The number of blocks used in files,
         The number of free blocks.

     The -s flag causes icheck to ignore the actual free list and
     reconstruct a new one by rewriting the super-block of the
     file system.  The file system should be dismounted while
     this is done; if this is not possible (for example if the
     root file system has to be salvaged) care should be taken
     that the system is quiescent and that it is rebooted immedi-
     ately afterwards so that the old, bad in-core copy of the
     super-block will not continue to be used.  Notice also that
     the words in the super-block which indicate the size of the
     free list and of the i-list are believed.  If the super-
     block has been curdled these words will have to be patched.
     The -s flag causes the normal output reports to be sup-
     pressed.

     Following the -b flag is a list of block numbers; whenever
     any of the named blocks turns up in a file, a diagnostic is
     produced.

     Icheck is faster if the raw version of the special file is
     used, since it reads the i-list many blocks at a time.

FILES
     Currently, /dev/rrk2 and /dev/rrp0 are the default file sys-
     tems.

SEE ALSO
     dcheck (VIII), ncheck (VIII), fs (V), clri (VIII),
     restor(VIII)

 1

DIAGNOSTICS
     For duplicate blocks and bad blocks (which lie outside the
     file system) icheck announces the difficulty, the i-number,
     and the kind of block involved.  If a read error is encoun-
     tered, the block number of the bad block is printed and
     icheck considers it to contain 0.  ``Bad freeblock'' means
     that a block number outside the available space was encoun-
     tered in the free list.  ``n dups in free'' means that n
     blocks were found in the free list which duplicate blocks
     either in some file or in the earlier part of the free list.

BUGS
     Since icheck is inherently two-pass in nature, extraneous
     diagnostics may be produced if applied to active file sys-
     tems.
     It believes even preposterous super-blocks and consequently
     can get core images.

 2