.I blocksize
]
[
-.B \-l|-L
+.BR \-l | \-L
.I bad_blocks_file
]
+[
+.B \-C
+.I fd
+]
.I device
.SH DESCRIPTION
.B e2fsck
is used to check a Linux second extended file system.
.TP
.I device
-is the special file corresponding to the device (e.g /dev/hdXX).
+is the special file corresponding to the device (e.g
+.IR /dev/hdc1 ).
.SH OPTIONS
.TP
-.I -a
+.B \-a
This option does the same thing as the
-.I -p
+.B \-p
option. It is provided for backwards compatibility only; it is
suggested that people use
-.I -p
+.B \-p
option whenever possible.
.TP
-.I -b superblock
-Instead of using the normal superblock, use the alternative superblock
+.BI \-b " superblock"
+Instead of using the normal superblock, use an alternative superblock
specified by
.IR superblock .
-.TP
-.I -B blocksize
+This option is normally used when the primary superblock has been
+corrupted. The location of the backup superblock is dependent on the
+filesystem's blocksize. For filesystems with 1k blocksizes, a backup
+superblock can be found at block 8193; for filesystems with 2k
+blocksizes, at block 16384; and for 4k blocksizes, at block 32768. If
+an alternative superblock is specified and
+the filesystem is not opened read-only, e2fsck will make sure that the
+primary superblock is updated appropriately upon completion of the
+filesystem check.
+.TP
+.BI \-B " blocksize"
Normally,
.B e2fsck
will search for the superblock at various different
.B e2fsck
will terminate with a fatal error.
.TP
-.I -c
+.B \-c
This option causes
.B e2fsck
to run the
program to find any blocks which are bad on the filesystem,
and then marks them as bad by adding them to the bad block inode.
.TP
-.I -d
+.B \-C
+This option causes
+.B e2fsck
+to write completion information to the specified file descriptor
+so that the progress of the filesystem
+check can be monitored. This option is typically used by programs
+which are running
+.BR e2fsck .
+If the file descriptor specified is 0,
+.B e2fsck
+will print a completion bar as it goes about its business. This requires
+that e2fsck is running on a video console or terminal.
+.TP
+.B \-d
Print debugging output (useless unless you are debugging
.BR e2fsck ).
.TP
-.I -f
+.B \-f
Force checking even if the file system seems clean.
.TP
-.I -F
+.B \-F
Flush the filesystem device's buffer caches before beginning. Only
really useful for doing
.B e2fsck
time trials.
.TP
-.I -l filename
+.BI \-l " filename"
Add the blocks listed in the file specified by
.I filename
-to the list of bad blocks.
+to the list of bad blocks. The format of this file is the same as the
+one generated by the
+.BR badblocks (8)
+program.
.TP
-.I -L filename
+.BI \-L " filename"
Set the bad blocks list to be the list of blocks specified by
.IR filename .
(This option is the same as the
-.I -l
+.B \-l
option, except the bad blocks list is cleared before the blocks listed
in the file are added to the bad blocks list.)
.TP
-.I -n
-Open the filesystem read-only, and assume an answer of ``no'' to all
+.B \-n
+Open the filesystem read-only, and assume an answer of `no' to all
questions. Allows
.B e2fsck
to be used non-interactively. (Note: if the
-.IR -c ,
-.IR -l ,
+.BR \-c ,
+.BR \-l ,
or
-.I -L
+.B \-L
options are specified in addition to the
-.I -n
+.B \-n
option, then the filesystem will be opened read-write, to permit the
bad-blocks list to be updated. However, no other changes will be made
to the filesystem.)
.TP
-.I -p
+.B \-p
Automatically repair ("preen") the file system without any questions.
.TP
-.I -r
+.B \-r
This option does nothing at all; it is provided only for backwards
compatibility.
.TP
-.I -s
+.B \-s
This option will byte-swap the filesystem so that it is using the normalized,
standard byte-order (which is i386 or little endian). If the filesystem is
already in the standard byte-order,
.B e2fsck
will take no action.
.TP
-.I -S
+.B \-S
This option will byte-swap the filesystem, regardless of its current
byte-order.
.TP
-.I -t
+.B \-t
Print timing statistics for
.BR e2fsck .
If this option is used twice, additional timing statistics are printed
on a pass by pass basis.
.TP
-.I -v
+.B \-v
Verbose mode.
.TP
-.I -V
+.B \-V
Print version information and exit.
.TP
-.I -y
-Assume an answer of ``yes'' to all questions; allows
+.B \-y
+Assume an answer of `yes' to all questions; allows
.B e2fsck
to be used non-interactively.
.SH EXIT CODE
.br
\ 128\ \-\ Shared library error
.br
+.SH SIGNALS
+The following signals have the following effect when sent to
+.BR e2fsck .
+.TP
+.B SIGUSR1
+This signal causes
+.B e2fsck
+to start displaying a completion bar. (See discussion of the
+.B \-C
+option.)
+.TP
+.B SIGUSR2
+This signal causes
+.B e2fsck
+to stop displaying a completion bar.
.SH REPORTING BUGS
Almost any piece of software will have bugs. If you manage to find a
filesystem which causes