FSCK_UFS(8) Maintenance Commands and Procedures FSCK_UFS(8)
NAME
fsck_ufs - file system consistency check and interactive repair
SYNOPSIS
fsck -F ufs [
generic-options] [
special]...
fsck -F ufs [
generic-options] [
-o specific-options]
[
special]...
DESCRIPTION
The
fsck utility audits and interactively repairs inconsistent conditions
on file systems. A file system to be checked may be specified by giving
the name of the block or character
special device or by giving the name
of its mount point if a matching entry exists in
/etc/vfstab.
The
special parameter represents the character special device, for
example,
/dev/rdsk/c1t0d0s7, on which the file system resides. The
character special device, not the block special device should be used.
The
fsck utility will not work if the block device is mounted, unless the
file system is error-locked.
If no
special device is specified, all
ufs file systems specified in the
vfstab with a
fsckdev entry will be checked. If the
-p (``preen'') option
is specified,
ufs file systems with an
fsckpass number greater than
1 are
checked in parallel. See
fsck(8).
In the case of correcting serious inconsistencies, by default,
fsck asks
for confirmation before making a repair and waits for the operator to
respond either
yes or
no. If the operator does not have write permission
on the file system,
fsck will default to a
-n (no corrections) action.
See
fsck(8).
Repairing some file system inconsistencies can result in loss of data.
The amount and severity of data loss can be determined from the
diagnostic output.
The
fsck utility automatically corrects innocuous inconsistencies such as
unreferenced inodes, too-large link counts in inodes, missing blocks in
the free list, blocks appearing in the free list and also in files, or
incorrect counts in the super block. It displays a message for each
inconsistency corrected that identifies the nature of the correction on
the file system which took place. After successfully correcting a file
system,
fsck prints the number of files on that file system, the number
of used and free blocks, and the percentage of fragmentation.
Inconsistencies checked include:
o Blocks claimed by more than one inode or the free list.
o Blocks claimed by an inode or the free list outside the range
of the file system.
o Incorrect link counts.
o Incorrect directory sizes.
o Bad inode format.
o Blocks not accounted for anywhere.
o Directory checks, file pointing to unallocated inode, inode
number out of range, and absence of `
.' and `
..' as the first
two entries in each directory.
o Super Block checks: more blocks for inodes than there are in
the file system.
o Bad free block list format.
o 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. The name assigned is the inode number. If the
lost+found directory does not exist, it is created. If there is insufficient space
in the
lost+found directory, its size is increased.
An attempt to mount a
ufs file system with the
-o nolargefiles option
will fail if the file system has ever contained a large file (a file
whose size is greater than or equal to 2 Gbyte). Invoking
fsck resets the
file system state if no large files are present in the file system. A
successful mount of the file system after invoking
fsck indicates the
absence of large files in the file system. An unsuccessful mount attempt
indicates the presence of at least one large file. See
mount_ufs(8).
OPTIONS
The
generic-options consist of the following options:
-m Check but do not repair. This option checks that the file
system is suitable for mounting, returning the appropriate
exit status. If the file system is ready for mounting,
fsck displays a message such as:
ufs fsck: sanity check: /dev/rdsk/c0t3d0s1 okay -n|
N Assume a
no response to all questions asked by
fsck; do not
open the file system for writing.
-V Echo the expanded command line, but do not execute the
command. This option may be used to verify and to validate
the command line.
-v Enables verbose output. Might not be supported by all
filesystem-specific
fsck implementations.
-y|
Y Assume a
yes response to all questions asked by
fsck.
See generic
fsck(8) for the details for specifying
special.
-o specific-options Specify
ufs file system specific options. These
options can be any combination of the following
separated by commas (with no intervening spaces).
b=n Use block
n as the super block for the file
system. Block 32 is always one of the
alternate super blocks. Determine the
location of other super blocks by running
newfs(8) with the
-Nv options specified.
f Force checking of file systems regardless
of the state of their super block clean
flag.
p Check and fix the file system non-
interactively ("preen"). Exit immediately
if there is a problem requiring
intervention. This option is required to
enable parallel file system checking.
w Check writable file systems only.
FILES
/etc/vfstab list of default parameters for each file system
SEE ALSO
ufs(4FS),
vfstab(5),
attributes(7),
largefile(7),
clri(8),
fsck(8),
fsdb_ufs(8),
fsirand(8),
fstyp(8),
mkfs(8),
mkfs_ufs(8),
mount_ufs(8),
mountall(8),
newfs(8),
reboot(8)WARNINGS
The operating system buffers file system data. Running
fsck on a mounted
file system can cause the operating system's buffers to become out of
date with respect to the disk. For this reason, the file system should be
unmounted when
fsck is used. If this is not possible, care should be
taken that the system is quiescent and that it is rebooted immediately
after
fsck is run. Quite often, however, this will not be sufficient. A
panic will probably occur if running
fsck on a file system modifies the
file system.
NOTES
It is usually faster to check the character special device than the block
special device.
Running
fsck on file systems larger than 2 Gb fails if the user chooses
to use the block interface to the device:
fsck /dev/dsk/c?t?d?s? rather than the raw (character special) device:
fsck /dev/rdsk/c?t?d?s? August 2, 2005
FSCK_UFS(8)