32v 1m icheck
From Computer History Wiki
ICHECK(1M) UNIX Programmer's Manual ICHECK(1M)
NAME
icheck - file system storage consistency check
SYNOPSIS
icheck [ -s ] [ -b numbers ] [ filesystem ]
DESCRIPTION
_I_c_h_e_c_k 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 _i_c_h_e_c_k includes a report of
The total number of files and the numbers of regular,
directory, block special and character special files.
The total number of blocks in use and the numbers of
single-, double-, and triple-indirect blocks and direc-
tory blocks.
The number of free blocks.
The number of blocks missing; i.e. not in any file nor
in the free list.
The -s option causes _i_c_h_e_c_k 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 option causes the normal output reports to be
suppressed.
Following the -b option is a list of block numbers; whenever
any of the named blocks turns up in a file, a diagnostic is
produced.
_I_c_h_e_c_k is faster if the raw version of the special file is
used, since it reads the i-list many blocks at a time.
FILES
Default file systems vary with installation.
SEE ALSO
dcheck(1), ncheck(1), filsys(5), clri(1)
DIAGNOSTICS
For duplicate blocks and bad blocks (which lie outside the
file system) _i_c_h_e_c_k 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
_i_c_h_e_c_k 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 _i_c_h_e_c_k 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.