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)