fsck(1M) fsck(1M)
NAME
fsck - file system consistency check and interactive repair
SYNOPSIS
/etc/fsck [-y] [-n] [-sX] [-SX] [-tfile] [-q] [-sDoptions]
[-f] [file-systems]
/etc/fsck [-ppasstostart]
DESCRIPTION
fsck audits and interactively repairs inconsistent
conditions for Oreo system files. If the file system is
consistent then the number of files, number of blocks used,
and number of blocks free are reported. If the file system
is inconsistent the operator is prompted for concurrence
before each correction is attempted. It should be noted
that most corrective actions will result in some loss of
data. The amount and severity of data lost may be
determined from the diagnostic output. The default action
for each consistency correction is to wait for the operator
to respond yes or no. If the operator does not have write
permission fsck will default to a -n action.
fsck has more consistency checks than its predecessors
check, dcheck, fcheck, and icheck combined.
The following flag options are interpreted by fsck.
-y Assume a yes response to all questions asked by fsck.
-n Assume a no response to all questions asked by fsck;
do not open the file system for writing.
-sX 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.
The -sX flag option allows for creating an optimal
free-list organization. The following forms of X are
supported for the following devices:
-s3 (RP03)
-s4 (RP04, RP05, RP06)
-sBlocks-per-cylinder:Blocks-to-skip (for anything else)
If X is not given, the values used when the file
Page 1 (last mod. 1/15/87)
fsck(1M) fsck(1M)
system was created are used. If these values were not
specified, then the value 400:7 is used.
-SX Conditionally reconstruct the free list. This flag
option is like -sX above except that the free list is
rebuilt only if there were no discrepancies discovered
in the file system. Using -S will force a no response
to all questions asked by fsck. This flag option is
useful for forcing free list reorganization on
uncontaminated file systems.
-t If fsck cannot obtain enough memory to keep its
tables, it uses a scratch file. If the -t option is
specified, the file named in the next argument is used
as the scratch file, if needed. Without the -t flag,
fsck will prompt the operator for the name of the
scratch file. The file chosen should not be on the
file system being checked, and if it is not a special
file or did not already exist, it is removed when fsck
completes.
-q Quiet fsck. Do not print size-check messages in Phase
1. Unreferenced fifos will silently be removed. If
fsck requires it, counts in the superblock will be
automatically fixed and the free list salvaged.
-Doptions
options may be empty, in which directories are merely
checked for bad blocks, B, to check for and clear
parity bits in file names, C, to check whether all
trailing characters in the file name are null, CZ, to
check and write nulls in all trailing characters in
the file name.
-f Fast check. Check block and sizes (Phase 1) and check
the free list (Phase 5). The free list will be
reconstructed (Phase 6) if it is necessary.
-ppasstostart
``Preen'' the file system (automatically fixes those
things fsck can fix without assistance). passtostart
specifies the starting pass number (the default is 1).
If no file-systems are specified, fsck will read a list of
default file systems from the file /etc/fstab.
Page 2 (last mod. 1/15/87)
fsck(1M) fsck(1M)
Inconsistencies checked are as follows:
1. Blocks claimed by more than one inode or the free
list.
2. Blocks claimed by an inode or the free list outside
the range of the file system.
3. Incorrect link counts.
4. Size checks:
Incorrect number of blocks.
Directory size not 16-byte aligned.
5. Bad inode format.
6. Blocks not accounted for anywhere.
7. Directory checks:
File pointing to unallocated inode.
Inode number out of range.
8. Super Block checks:
More than 65536 inodes.
More blocks for inodes than there are in the file
system.
9. Bad free block list format.
10. Total free block and/or free inode count incorrect.
Orphaned files and directories (allocated but unreferenced)
are, with the operator's concurrence, reconnected by placing
them in the lost+found directory, if the files are nonempty.
The user will be notified if the file or directory is empty
or not. If it is empty, fsck will silently remove them.
fsck will force the reconnection of nonempty directories.
The name assigned is the inode number. The only restriction
is that the directory lost+found must preexist in the root
of the file system being checked and must have empty slots
in which entries can be made. This is accomplished by
making lost+found, copying a number of files to the
directory, and then removing them (before fsck is executed).
Checking the raw device is almost always faster and should
be used with everything but the root file system.
EXAMPLE
fsck /dev/rdisk0
checks the consistency of device rdisk0.
FILES
/etc/fsck
/etc/fstab contains default list of file systems to
check.
SEE ALSO
clri(1M), ncheck(1M), fstab(4), fs(4), crash(8).
BUGS
Page 3 (last mod. 1/15/87)
fsck(1M) fsck(1M)
Inode numbers for . and .. in each directory should be
checked for validity.
DIAGNOSTICS
The diagnostics produced by fsck are intended to be self-
explanatory.
Page 4 (last mod. 1/15/87)