fsck_ufs - file system consistency check and interactive
fsck -F ufs [generic-options] [special...]
fsck -F ufs [generic-options] [-o specific-options] [spe-
The fsck utility audits and interactively repairs incon-
sistent 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 dev-
ice, for example, /dev/rdsk/c1t0d0s7, on which the file sys-
tem resides. The character special device, not the block
special device should be used. The fsck utility will not
work on a block device 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(1M).
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 sys-
tem, fsck will default to a -n (no corrections) action.
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 incon-
sistencies 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 suc-
cessfully 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 are as follows:
o Blocks claimed by more than one inode or the free
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 nolarge-
files 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(1M).
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.
-y|Y Assume a yes response to all questions asked by fsck.
See generic fsck(1M) for the details for specifying spe-
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
Determine the location of other super blocks
by running newfs(1M) with the -Nv options speci-
c If the file system is in the old (static table)
format, convert it to the new (dynamic table)
format. If the file system is in the new format,
convert it to the old format provided the old
format can support the file system configura-
tion. In interactive mode, fsck will list the
direction the conversion is to be made and ask
whether the conversion should be done. If a
negative answer is given, no further operations
are done on the file system. In preen mode, the
direction of the conversion is listed and done
if possible without user interaction. Conversion
in preen mode is best used when all the file
systems are being converted at once. The format
of a file system can be determined from the
first line of output from fstyp(1M). Note: the
c option is seldom used and is included only for
compatibility with pre-4.1 releases. There is
no guarantee that this option will be included
in future releases.
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 prob-
lem requiring intervention. This option is
required to enable parallel file system check-
w Check writable file systems only.
list of default parameters for each file system
See attributes(5) for descriptions of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Availability | SUNWcsu |
clri(1M), fsck(1M), fsdb_ufs(1M), fsirand(1M), fstyp(1M),
mkfs(1M), mkfs_ufs(1M), mount_ufs(1M), mountall(1M),
newfs(1M), reboot(1M), vfstab(4), attributes(5), large-
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.
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:
rather than the raw (character special) device:
Man(1) output converted with