fsck_ufs(1M) System Administration Commands fsck_ufs(1M)
fsck_ufs - file system consistency check and interactive repair
fsck -F ufs [generic-options] [special...]
fsck -F ufs [generic-options] [-o specific-options] [special...]
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
The special parameter represents the character special device, for example, /dev/rdsk/c1t0d0s7, on which the file system resides. The char-
acter 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(1M).
In the case of correcting serious inconsistencies, by default, fsck asks for confirmation before making a repair and waits for the opera-
tor 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 correc-
tions) action. See fsck(1M).
Repairing some file system inconsistencies can result in loss of data. The amount and severity of data loss can be determined from the
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 cor-
recting a file system, fsck prints the number of files on that file system, the number of used and free blocks, and the percentage of frag-
Inconsistencies checked are as follows:
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 sys-
tem. 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 appropri-
ate 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 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).
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(1M) with the -Nv options specified.
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 configuration. 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 inter-
action. 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.
Force checking of file systems regardless of the state of their super block clean flag.
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.
Check writable file systems only.
/etc/vfstab list of default parameters for each file system
See attributes(5) for descriptions of the following attributes:
| 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), largefile(5), ufs(7FS)
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:
SunOS 5.10 15 Apr 2003 fsck_ufs(1M)