2000-10-09 10:26:15 +00:00
|
|
|
.\" $NetBSD: fsck.8,v 1.19 1999/03/10 00:08:33 erh Exp $
|
|
|
|
.\" $FreeBSD$
|
|
|
|
.\"
|
|
|
|
.\" Copyright (c) 1996 Christos Zoulas. All rights reserved.
|
|
|
|
.\"
|
|
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
|
|
.\" modification, are permitted provided that the following conditions
|
|
|
|
.\" are met:
|
|
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
|
|
.\" 3. All advertising materials mentioning features or use of this software
|
|
|
|
.\" must display the following acknowledgement:
|
|
|
|
.\" This product includes software developed by Christos Zoulas.
|
|
|
|
.\" 4. The name of the author may not be used to endorse or promote products
|
|
|
|
.\" derived from this software without specific prior written permission.
|
|
|
|
.\"
|
|
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
|
|
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
|
|
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
|
|
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
|
|
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
|
|
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
|
|
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
|
|
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
|
|
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
|
|
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
.\"
|
2001-04-27 08:28:44 +00:00
|
|
|
.Dd April 25, 2001
|
2000-10-09 10:26:15 +00:00
|
|
|
.Dt FSCK 8
|
2000-12-18 15:16:24 +00:00
|
|
|
.Os
|
2000-10-09 10:26:15 +00:00
|
|
|
.Sh NAME
|
|
|
|
.Nm fsck
|
|
|
|
.Nd file system consistency check and interactive repair
|
|
|
|
.Sh SYNOPSIS
|
2000-11-20 16:52:27 +00:00
|
|
|
.Nm
|
2000-10-09 10:26:15 +00:00
|
|
|
.Op Fl dvplfyn
|
Add support for running foreground (-F) and background (-B) checks.
Traditionally, fsck is invoked before the filesystems are mounted
and all checks are done to completion at that time. If background
checking is available, fsck is invoked twice. It is first invoked
at the traditional time, before the filesystems are mounted, with
the -F flag to do checking on all the filesystems that cannot do
background checking. It is then invoked a second time, after the
system has completed going multiuser, with the -B flag to do checking
on all the filesystems that can do background checking. Unlike
the foreground checking, the background checking is started
asynchonously so that other system activity can proceed even on
the filesystems that are being checked.
At the moment, only the fast filesystem supports background checking.
To be able to do background checking, a filesystem must have been
running with soft updates, not have been marked as needing a
foreground check, and be mounted and writable when the background
check is to be done (i.e., not listed as `noauto' in /etc/fstab).
These changes are the final piece needed to support background
filesystem checking. They will not have any effect until you update
your /etc/rc to invoke fsck in its new mode of operation. I am
still playing around with exactly what those changes should be
and should be committing them later this week.
2001-04-25 07:18:22 +00:00
|
|
|
.Op Fl B | F
|
2000-10-09 10:26:15 +00:00
|
|
|
.Op Fl l Ar maxparallel
|
2001-07-15 07:53:42 +00:00
|
|
|
.Op Fl t Ar fstype
|
|
|
|
.Op Fl T Ar fstype : Ns Ar fsoptions
|
2000-11-18 15:50:46 +00:00
|
|
|
.Op Ar special | node ...
|
2000-10-09 10:26:15 +00:00
|
|
|
.Sh DESCRIPTION
|
|
|
|
The
|
|
|
|
.Nm
|
|
|
|
command invokes filesystem-specific programs to check
|
2001-07-15 07:53:42 +00:00
|
|
|
the special devices listed in the
|
2000-10-09 10:26:15 +00:00
|
|
|
.Xr fstab 5
|
|
|
|
file or in the command line for consistency.
|
|
|
|
.Pp
|
|
|
|
It is normally used in the script
|
|
|
|
.Pa /etc/rc
|
|
|
|
during automatic reboot.
|
Add support for running foreground (-F) and background (-B) checks.
Traditionally, fsck is invoked before the filesystems are mounted
and all checks are done to completion at that time. If background
checking is available, fsck is invoked twice. It is first invoked
at the traditional time, before the filesystems are mounted, with
the -F flag to do checking on all the filesystems that cannot do
background checking. It is then invoked a second time, after the
system has completed going multiuser, with the -B flag to do checking
on all the filesystems that can do background checking. Unlike
the foreground checking, the background checking is started
asynchonously so that other system activity can proceed even on
the filesystems that are being checked.
At the moment, only the fast filesystem supports background checking.
To be able to do background checking, a filesystem must have been
running with soft updates, not have been marked as needing a
foreground check, and be mounted and writable when the background
check is to be done (i.e., not listed as `noauto' in /etc/fstab).
These changes are the final piece needed to support background
filesystem checking. They will not have any effect until you update
your /etc/rc to invoke fsck in its new mode of operation. I am
still playing around with exactly what those changes should be
and should be committing them later this week.
2001-04-25 07:18:22 +00:00
|
|
|
Traditionally,
|
|
|
|
.Nm
|
|
|
|
is invoked before the filesystems are mounted
|
|
|
|
and all checks are done to completion at that time.
|
|
|
|
If background checking is available,
|
|
|
|
.Nm
|
|
|
|
is invoked twice.
|
|
|
|
It is first invoked at the traditional time,
|
|
|
|
before the filesystems are mounted, with the
|
|
|
|
.Fl F
|
|
|
|
flag to do checking on all the filesystems
|
|
|
|
that cannot do background checking.
|
|
|
|
It is then invoked a second time,
|
|
|
|
after the system has completed going multiuser, with the
|
|
|
|
.Fl B
|
|
|
|
flag to do checking on all the filesystems
|
|
|
|
that can do background checking.
|
|
|
|
Unlike the foreground checking,
|
|
|
|
the background checking is started asynchonously
|
|
|
|
so that other system activity can proceed
|
|
|
|
even on the filesystems that are being checked.
|
|
|
|
.Pp
|
2001-04-27 08:28:44 +00:00
|
|
|
If no filesystems are specified,
|
2000-10-09 10:26:15 +00:00
|
|
|
.Nm
|
|
|
|
reads the table
|
|
|
|
.Pa /etc/fstab
|
|
|
|
to determine which filesystems to check.
|
2001-04-27 08:28:44 +00:00
|
|
|
Only partitions in
|
|
|
|
.Pa /etc/fstab
|
|
|
|
that are mounted
|
|
|
|
.Dq rw ,
|
|
|
|
.Dq rq
|
|
|
|
or
|
|
|
|
.Dq ro
|
2000-10-09 10:26:15 +00:00
|
|
|
and that have non-zero pass number are checked.
|
|
|
|
Filesystems with pass number 1 (normally just the root filesystem)
|
2001-03-30 08:01:34 +00:00
|
|
|
are always checked one at a time.
|
|
|
|
.Pp
|
|
|
|
If not in preen mode, the remaining entries are checked in order of
|
|
|
|
increasing pass number one at a time.
|
2001-04-04 10:36:16 +00:00
|
|
|
This is needed when interaction with
|
|
|
|
.Nm
|
|
|
|
is required.
|
2001-03-30 08:01:34 +00:00
|
|
|
.Pp
|
|
|
|
In preen mode, after pass 1 completes, all remaining filesystems are checked,
|
|
|
|
in pass number order running one process per disk drive in parallel for each
|
|
|
|
pass number in increasing order.
|
|
|
|
.Pp
|
|
|
|
In other words: In preen mode all pass 1 partitions are checked sequentially.
|
|
|
|
Next all pass 2 partitions are checked in parallel, one process per disk drive.
|
|
|
|
Next all pass 3 partitions are checked in parallel, one process per disk drive.
|
|
|
|
etc.
|
|
|
|
.Pp
|
2000-12-27 22:28:40 +00:00
|
|
|
The disk drive containing each filesystem is inferred from the shortest prefix
|
2000-10-09 10:26:15 +00:00
|
|
|
of the device name that ends in a digit; the remaining characters are assumed
|
2001-03-30 08:01:34 +00:00
|
|
|
to be the partition and slice designators.
|
2000-10-09 10:26:15 +00:00
|
|
|
.Pp
|
|
|
|
The options are as follows:
|
|
|
|
.Bl -tag -width indent
|
|
|
|
.It Fl d
|
|
|
|
Debugging mode. Just print the commands without executing them. Available
|
|
|
|
only if
|
|
|
|
.Nm
|
|
|
|
is compiled to support it.
|
|
|
|
.It Fl f
|
|
|
|
Force checking of filesystems, even when they are marked clean (for filesystems
|
|
|
|
that support this).
|
|
|
|
.It Fl n
|
|
|
|
Causes
|
|
|
|
.Nm
|
|
|
|
to assume no as the answer to all operator questions, except "CONTINUE?".
|
|
|
|
.It Fl p
|
|
|
|
Enter preen mode.
|
Add support for running foreground (-F) and background (-B) checks.
Traditionally, fsck is invoked before the filesystems are mounted
and all checks are done to completion at that time. If background
checking is available, fsck is invoked twice. It is first invoked
at the traditional time, before the filesystems are mounted, with
the -F flag to do checking on all the filesystems that cannot do
background checking. It is then invoked a second time, after the
system has completed going multiuser, with the -B flag to do checking
on all the filesystems that can do background checking. Unlike
the foreground checking, the background checking is started
asynchonously so that other system activity can proceed even on
the filesystems that are being checked.
At the moment, only the fast filesystem supports background checking.
To be able to do background checking, a filesystem must have been
running with soft updates, not have been marked as needing a
foreground check, and be mounted and writable when the background
check is to be done (i.e., not listed as `noauto' in /etc/fstab).
These changes are the final piece needed to support background
filesystem checking. They will not have any effect until you update
your /etc/rc to invoke fsck in its new mode of operation. I am
still playing around with exactly what those changes should be
and should be committing them later this week.
2001-04-25 07:18:22 +00:00
|
|
|
In preen mode, only a restricted class of innocuous
|
|
|
|
filesystem inconsistencies will be corrected.
|
|
|
|
If unexpected inconsistencies caused by hardware or
|
2001-07-15 07:53:42 +00:00
|
|
|
software failures are encounted, the check program
|
Add support for running foreground (-F) and background (-B) checks.
Traditionally, fsck is invoked before the filesystems are mounted
and all checks are done to completion at that time. If background
checking is available, fsck is invoked twice. It is first invoked
at the traditional time, before the filesystems are mounted, with
the -F flag to do checking on all the filesystems that cannot do
background checking. It is then invoked a second time, after the
system has completed going multiuser, with the -B flag to do checking
on all the filesystems that can do background checking. Unlike
the foreground checking, the background checking is started
asynchonously so that other system activity can proceed even on
the filesystems that are being checked.
At the moment, only the fast filesystem supports background checking.
To be able to do background checking, a filesystem must have been
running with soft updates, not have been marked as needing a
foreground check, and be mounted and writable when the background
check is to be done (i.e., not listed as `noauto' in /etc/fstab).
These changes are the final piece needed to support background
filesystem checking. They will not have any effect until you update
your /etc/rc to invoke fsck in its new mode of operation. I am
still playing around with exactly what those changes should be
and should be committing them later this week.
2001-04-25 07:18:22 +00:00
|
|
|
will exit with a failure.
|
|
|
|
See the manual pages for the individual check programs
|
|
|
|
for a list of the sorts of failures that they correct
|
|
|
|
when running in preen mode.
|
|
|
|
.It Fl F
|
|
|
|
Run in foreground mode.
|
|
|
|
The check program for each filesystem is invoked with the
|
|
|
|
.Fl F
|
|
|
|
flag to determine whether it wishes to run as part of
|
|
|
|
the boot up sequence,
|
|
|
|
or if it is able to do its job in background after the
|
|
|
|
system is up and running.
|
|
|
|
A non-zero exit code indicates that it wants to run in foreground
|
|
|
|
and the check program is invoked.
|
|
|
|
A zero exit code indicates that it is able to run later in background
|
|
|
|
and just a deferred message is printed.
|
|
|
|
.It Fl B
|
|
|
|
Run in background mode.
|
|
|
|
The check program for each filesystem is invoked with the
|
|
|
|
.Fl F
|
|
|
|
flag to determine whether it wishes to run as part of
|
|
|
|
the boot up sequence,
|
|
|
|
or if it is able to do its job in background after the
|
|
|
|
system is up and running.
|
|
|
|
A non-zero exit code indicates that it wanted to run in foreground
|
|
|
|
which is assumed to have been done, so the filesystem is skipped.
|
|
|
|
A zero exit code indicates that it is able to run in background
|
|
|
|
so the check program is invoked with the
|
|
|
|
.Fl B
|
|
|
|
flag to indicate that a check on the active filesystem should be done.
|
|
|
|
When running in background mode,
|
|
|
|
only one filesystem at a time will be checked.
|
2000-10-09 10:26:15 +00:00
|
|
|
.It Fl t Ar fstype
|
|
|
|
Invoke
|
|
|
|
.Nm
|
|
|
|
only for the comma separated list of filesystem types. If the
|
|
|
|
list starts with
|
|
|
|
.Dq no
|
|
|
|
then invoke
|
|
|
|
.Nm
|
|
|
|
for the filesystem types that are not specified in the list.
|
|
|
|
.It Fl v
|
|
|
|
Print the commands before executing them.
|
|
|
|
.It Fl y
|
|
|
|
Causes
|
|
|
|
.Nm
|
|
|
|
to assume yes
|
|
|
|
as the answer to all operator questions.
|
2001-07-15 07:53:42 +00:00
|
|
|
.It Fl T Ar fstype : Ns Ar fsoptions
|
2000-10-09 10:26:15 +00:00
|
|
|
List of comma separated file system specific options for the specified
|
|
|
|
file system type, in the same format as
|
|
|
|
.Xr mount 8 .
|
|
|
|
.El
|
|
|
|
.Sh FILES
|
|
|
|
.Bl -tag -width /etc/fstab -compact
|
|
|
|
.It Pa /etc/fstab
|
|
|
|
file system table
|
|
|
|
.El
|
|
|
|
.Sh SEE ALSO
|
|
|
|
.Xr fstab 5 ,
|
2001-04-27 08:28:44 +00:00
|
|
|
.Xr fsck_ffs 8 ,
|
2001-08-22 14:16:31 +00:00
|
|
|
.Xr fsck_msdosfs 8 ,
|
2001-04-27 08:28:44 +00:00
|
|
|
.Xr mount 8
|