225 lines
6.9 KiB
Groff
225 lines
6.9 KiB
Groff
.\" $NetBSD: fsck_lfs.8,v 1.2 1999/03/19 17:29:44 perseant Exp $
|
|
.\"
|
|
.\" Copyright (c) 1980, 1989, 1991, 1993
|
|
.\" The Regents of the University of California. 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 the University of
|
|
.\" California, Berkeley and its contributors.
|
|
.\" 4. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``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 REGENTS OR CONTRIBUTORS 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.
|
|
.\"
|
|
.\" @(#)fsck.8 8.3 (Berkeley) 11/29/94
|
|
.\"
|
|
.Dd March 17, 1999
|
|
.Dt FSCK_LFS 8
|
|
.Os NetBSD
|
|
.Sh NAME
|
|
.Nm fsck_lfs
|
|
.Nd Log-structured File System consistency check and interactive repair
|
|
.Sh SYNOPSIS
|
|
.Nm fsck_lfs
|
|
.Op Fl b Ar block#
|
|
.Op Fl d
|
|
.\" .Op Fl m
|
|
.\" .Op Fl f
|
|
.Op Fl p
|
|
.Op Fl y
|
|
.Op Fl n
|
|
.Ar filesystem
|
|
.Ar ...
|
|
.Sh DESCRIPTION
|
|
.Nm Fsck_lfs
|
|
performs interactive filesystem consistency checks and repair for each of
|
|
the filesystems specified on the command line. It is normally invoked from
|
|
.Xr fsck 8 .
|
|
.Pp
|
|
The design of LFS takes care that no filesystem inconsistencies can
|
|
happen unless hardware or software failures intervene.
|
|
.Nm Fsck_lfs
|
|
will report and optionally correct any such inconsistencies.
|
|
.Pp
|
|
For each corrected inconsistency one or more lines will be printed
|
|
identifying the filesystem on which the correction will take place,
|
|
and the nature of the correction. After successfully correcting a filesystem,
|
|
.Nm fsck_lfs
|
|
will print the number of files on that filesystem,
|
|
the number of used and free blocks,
|
|
and the percentage of fragmentation.
|
|
.Pp
|
|
If sent a
|
|
.Dv QUIT
|
|
signal,
|
|
.Nm fsck_lfs
|
|
will finish the filesystem checks, then exit with an abnormal return status.
|
|
.Pp
|
|
Without the
|
|
.Fl p
|
|
option,
|
|
.Nm fsck_lfs
|
|
audits and interactively repairs inconsistent conditions for filesystems.
|
|
If the filesystem is inconsistent the operator is prompted for concurrence
|
|
before each correction is attempted.
|
|
It should be noted that some of the corrective actions will result in
|
|
some loss of data.
|
|
The amount and severity of data lost may be determined from the diagnostic
|
|
output.
|
|
The default action for each consistency correction
|
|
is to wait for the operator to respond
|
|
.Li yes
|
|
or
|
|
.Li no .
|
|
If the operator does not have write permission on the filesystem
|
|
.Nm fsck_lfs
|
|
will default to a
|
|
.Fl n
|
|
action.
|
|
.Pp
|
|
The following flags are interpreted by
|
|
.Nm fsck_lfs .
|
|
.Bl -tag -width indent
|
|
.It Fl b
|
|
Use the block specified immediately after the flag as
|
|
the super block for the filesystem. Block 32 is usually
|
|
an alternative super block.
|
|
.It Fl d
|
|
Print debugging output.
|
|
.\" .It Fl f
|
|
.\" Force checking of file systems. Normally, if a file system is cleanly
|
|
.\" unmounted, the kernel will set a
|
|
.\" .Dq clean flag
|
|
.\" in the file system superblock, and
|
|
.\" .Nm
|
|
.\" will not check the file system. This option forces
|
|
.\" .Nm
|
|
.\" to check the file system, regardless of the state of the clean flag.
|
|
.\" .It Fl m
|
|
.\" Use the mode specified in octal immediately after the flag as the
|
|
.\" permission bits to use when creating the
|
|
.\" .Pa lost+found
|
|
.\" directory rather than the default 1700.
|
|
.\" In particular, systems that do not wish to have lost files accessible
|
|
.\" by all users on the system should use a more restrictive
|
|
.\" set of permissions such as 700.
|
|
.It Fl n
|
|
Assume a no response to all questions asked by
|
|
.Nm fsck_lfs
|
|
except for
|
|
.Ql CONTINUE? ,
|
|
which is assumed to be affirmative;
|
|
do not open the filesystem for writing.
|
|
.It Fl p
|
|
Specify ``preen'' mode. In fsck_lfs this currently does nothing, though
|
|
in the future it will perform a roll-forward.
|
|
.It Fl y
|
|
Assume a yes response to all questions asked by
|
|
.Nm fsck_lfs ;
|
|
this should be used with great caution as this is a free license
|
|
to continue after essentially unlimited trouble has been encountered.
|
|
.El
|
|
.Pp
|
|
.Bl -enum -indent indent -compact
|
|
Inconsistencies checked are as follows:
|
|
.It
|
|
Blocks claimed by more than one inode or the free map.
|
|
.It
|
|
Blocks claimed by an inode outside the range of the filesystem.
|
|
.It
|
|
Incorrect link counts.
|
|
.It
|
|
Size checks:
|
|
.Bl -item -indent indent -compact
|
|
.It
|
|
Directory size not a multiple of DIRBLKSIZ.
|
|
.It
|
|
Partially truncated file.
|
|
.El
|
|
.It
|
|
Bad inode format.
|
|
.It
|
|
Blocks not accounted for anywhere.
|
|
.It
|
|
Directory checks:
|
|
.Bl -item -indent indent -compact
|
|
.It
|
|
File pointing to unallocated inode.
|
|
.It
|
|
Inode number out of range.
|
|
.It
|
|
Dot or dot-dot not the first two entries of a directory
|
|
or having the wrong inode number.
|
|
.El
|
|
.It
|
|
Super Block checks:
|
|
.Bl -item -indent indent -compact
|
|
.It
|
|
More blocks for inodes than there are in the filesystem.
|
|
.It
|
|
Bad free block map format.
|
|
.It
|
|
Total free block and/or free inode count incorrect.
|
|
.El
|
|
.El
|
|
.Pp
|
|
Orphaned files and directories (allocated but unreferenced) are,
|
|
with the operator's concurrence, reconnected by
|
|
placing them in the
|
|
.Pa lost+found
|
|
directory.
|
|
The name assigned is the inode number.
|
|
If the
|
|
.Pa lost+found
|
|
directory does not exist, it is created.
|
|
If there is insufficient space its size is increased.
|
|
.Pp
|
|
Because of inconsistencies between the block device and the buffer cache,
|
|
the raw device should always be used.
|
|
.Sh DIAGNOSTICS
|
|
The diagnostics produced by
|
|
.Nm fsck_lfs
|
|
are fully enumerated and explained in Appendix A of
|
|
.Rs
|
|
.%T "Fsck \- The UNIX File System Check Program"
|
|
.Re
|
|
.Sh BUGS
|
|
.Nm Fsck_lfs
|
|
cannot currently make any repairs, even a roll-forward.
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
program was first made available in
|
|
.Nx 1.4 .
|
|
.Sh AUTHOR
|
|
Most of the
|
|
.Nm
|
|
program was taken from
|
|
.Xr fsck_ffs 8 ;
|
|
what was not was written by Konrad Schroder <perseant@hhhh.org>.
|
|
.Sh SEE ALSO
|
|
.Xr fstab 5 ,
|
|
.Xr newlfs 8 ,
|
|
.Xr reboot 8 ,
|
|
.Xr fsck 8
|