fsck \- file system consistency check and interactive repair
preens a standard set of filesystems or the specified file systems.
It is normally used in the script
to determine which file systems to check.
It uses the information there to inspect groups of disks in parallel taking
maximum advantage of i/o overlap to check the file systems
Normally, the root file system will be checked on pass 1, other
``root'' (``a'' partition) file systems on pass 2, other
small file systems on separate passes (e.g. the ``d'' file systems
on pass 3 and the ``e'' file systems on pass 4), and finally
the large user file systems on the last pass, e.g. pass 5.
A pass number of 0 in fstab causes a disk to not be checked; similarly
partitions which are not shown as to be mounted ``rw'' or ``ro''
The system takes care that only a restricted class of innocuous
inconsistencies can happen unless hardware or software failures intervene.
These are limited to the following:
Link counts in inodes too large
Missing blocks in the free list
Blocks in the free list also in files
Counts in the super-block wrong
These are the only inconsistencies which
option will correct; if it encounters other inconsistencies, it exits
with an abnormal return status and an automatic reboot will then fail.
For each corrected inconsistency one or more lines will be printed
identifying the file system on which the correction will take place,
and the nature of the correction. After successfully correcting a file
will print the number of files on that file system and the number of
audits and interactively repairs inconsistent conditions for file systems.
If the file system is inconsistent the operator is prompted for concurrence
before each correction is attempted.
It should be noted that a number of the corrective actions which are not
option will result in some loss
The amount and severity of data lost may be determined from the diagnostic
The default action for each consistency correction
is to wait for the operator to respond \fByes\fP or \fBno\fP.
If the operator does not have write permission
has more consistency checks than
.IR "check, dcheck, fcheck, " "and" " icheck"
The following flags are interpreted by
Assume a yes response to all questions asked by
this should be used with great caution as this is a free license
to continue after essentially unlimited trouble has been encountered.
Assume a no response to all questions asked by
do not open the file system for writing.
Ignore the actual free list and (unconditionally) reconstruct a new
one by rewriting the super-block of the file system.
The file system should be unmounted while this is done; if this
is not possible, care should be taken that the system is quiescent
and that it is rebooted immediately afterwards.
This precaution is necessary so that the old, bad, in-core copy
of the superblock will not continue to be used, or written on the file system.
option allows for creating an optimal free-list organization.
are supported for the following devices:
\-sBlocks-per-cylinder\fB:\fRBlocks-to-skip (for anything else)
the values used when the filesystem was created
If these values were not specified, then the value
Conditionally reconstruct the free list. This option
above except that the free list is rebuilt only
if there were no discrepancies discovered in the
will force a no response to all questions asked
This option is useful for forcing free list reorganization
on uncontaminated file systems.
cannot obtain enough memory to keep its tables,
it uses a scratch file. If the \f3\-t\fP option is
specified, the file named in the next argument
is used as the scratch file, if needed. Without the
will prompt the operator for the name of the
scratch file. The file chosen should not be on the
filesystem being checked, and if it is not
a special file or did not already exist, it is
If no filesystems are given to
then a default list of file systems is read from
Inconsistencies checked are as follows:
Blocks claimed by more than one inode or the free list.
Blocks claimed by an inode or the free list outside the range of the file system.
Directory size not 16-byte aligned.
Blocks not accounted for anywhere.
File pointing to unallocated inode.
Inode number out of range.
More blocks for inodes than there are in the file system.
Bad free block list format.
Total free block and/or free inode count incorrect.
Orphaned files and directories (allocated but unreferenced) are,
with the operator's concurrence, reconnected by
The name assigned is the inode number. The only restriction
in the root of the filesystem being checked and
must have empty slots in which entries can be made.
This is accomplished by making
copying a number of files to the directory, and then removing them
Checking the raw device is almost always faster.
contains default list of file systems to check.
The diagnostics produced by
are intended to be self-explanatory.
fstab(5), fs(5), crash(8), reboot(8)
in each directory should be checked for validity.
\f3\-g\fP and \f3\-b\fP options from
There should be some way to start a \fBfsck \-p\fR at pass \fIn\fR.