Tue Mar 6 10:30:20 2012 UTC ()
Mention scan_ffs -b.
Based on a patch by Matthew Mondor <mm_lists@pulsar-zone.net> on
tech-userlevel.
Bump date.


(wiz)
diff -r1.48 -r1.49 src/sbin/fsck_ffs/fsck_ffs.8

cvs diff -r1.48 -r1.49 src/sbin/fsck_ffs/fsck_ffs.8 (switch to unified diff)

--- src/sbin/fsck_ffs/fsck_ffs.8 2011/05/14 19:46:10 1.48
+++ src/sbin/fsck_ffs/fsck_ffs.8 2012/03/06 10:30:20 1.49
@@ -1,370 +1,377 @@ @@ -1,370 +1,377 @@
1.\" $NetBSD: fsck_ffs.8,v 1.48 2011/05/14 19:46:10 dholland Exp $ 1.\" $NetBSD: fsck_ffs.8,v 1.49 2012/03/06 10:30:20 wiz Exp $
2.\" 2.\"
3.\" Copyright (c) 1980, 1989, 1991, 1993 3.\" Copyright (c) 1980, 1989, 1991, 1993
4.\" The Regents of the University of California. All rights reserved. 4.\" The Regents of the University of California. All rights reserved.
5.\" 5.\"
6.\" Redistribution and use in source and binary forms, with or without 6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions 7.\" modification, are permitted provided that the following conditions
8.\" are met: 8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright 9.\" 1. Redistributions of source code must retain the above copyright
10.\" notice, this list of conditions and the following disclaimer. 10.\" notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\" notice, this list of conditions and the following disclaimer in the 12.\" notice, this list of conditions and the following disclaimer in the
13.\" documentation and/or other materials provided with the distribution. 13.\" documentation and/or other materials provided with the distribution.
14.\" 3. Neither the name of the University nor the names of its contributors 14.\" 3. Neither the name of the University nor the names of its contributors
15.\" may be used to endorse or promote products derived from this software 15.\" may be used to endorse or promote products derived from this software
16.\" without specific prior written permission. 16.\" without specific prior written permission.
17.\" 17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28.\" SUCH DAMAGE. 28.\" SUCH DAMAGE.
29.\" 29.\"
30.\" @(#)fsck.8 8.3 (Berkeley) 11/29/94 30.\" @(#)fsck.8 8.3 (Berkeley) 11/29/94
31.\" 31.\"
32.Dd May 14, 2011 32.Dd March 6, 2012
33.Dt FSCK_FFS 8 33.Dt FSCK_FFS 8
34.Os 34.Os
35.Sh NAME 35.Sh NAME
36.Nm fsck_ffs 36.Nm fsck_ffs
37.Nd Fast File System consistency check and interactive repair 37.Nd Fast File System consistency check and interactive repair
38.Sh SYNOPSIS 38.Sh SYNOPSIS
39.Nm 39.Nm
40.Op Fl adFfPpqUX 40.Op Fl adFfPpqUX
41.Op Fl B Ar byteorder 41.Op Fl B Ar byteorder
42.Op Fl b Ar block 42.Op Fl b Ar block
43.Op Fl c Ar level 43.Op Fl c Ar level
44.Op Fl m Ar mode 44.Op Fl m Ar mode
45.Op Fl x Ar snap-backup 45.Op Fl x Ar snap-backup
46.Op Fl y | n 46.Op Fl y | n
47.Ar filesystem ... 47.Ar filesystem ...
48.Sh DESCRIPTION 48.Sh DESCRIPTION
49.Nm 49.Nm
50performs interactive file system consistency checks and repair for each of 50performs interactive file system consistency checks and repair for each of
51the file systems specified on the command line. 51the file systems specified on the command line.
52It is normally invoked from 52It is normally invoked from
53.Xr fsck 8 . 53.Xr fsck 8 .
54.Pp 54.Pp
55The kernel takes care that only a restricted class of innocuous file system 55The kernel takes care that only a restricted class of innocuous file system
56inconsistencies can happen unless hardware or software failures intervene. 56inconsistencies can happen unless hardware or software failures intervene.
57These are limited to the following: 57These are limited to the following:
58.Pp 58.Pp
59.Bl -item -compact -offset indent 59.Bl -item -compact -offset indent
60.It 60.It
61Unreferenced inodes 61Unreferenced inodes
62.It 62.It
63Link counts in inodes too large 63Link counts in inodes too large
64.It 64.It
65Missing blocks in the free map 65Missing blocks in the free map
66.It 66.It
67Blocks in the free map also in files 67Blocks in the free map also in files
68.It 68.It
69Counts in the super-block wrong 69Counts in the super-block wrong
70.El 70.El
71.Pp 71.Pp
72These are the only inconsistencies that 72These are the only inconsistencies that
73.Nm 73.Nm
74in 74in
75.Dq preen 75.Dq preen
76mode (with the 76mode (with the
77.Fl p 77.Fl p
78option) will correct; if it encounters other inconsistencies, it exits 78option) will correct; if it encounters other inconsistencies, it exits
79with an abnormal return status. 79with an abnormal return status.
80For each corrected inconsistency one or more lines will be printed 80For each corrected inconsistency one or more lines will be printed
81identifying the file system on which the correction will take place, 81identifying the file system on which the correction will take place,
82and the nature of the correction. 82and the nature of the correction.
83After successfully correcting a file system, 83After successfully correcting a file system,
84.Nm 84.Nm
85will print the number of files on that file system, 85will print the number of files on that file system,
86the number of used and free blocks, 86the number of used and free blocks,
87and the percentage of fragmentation. 87and the percentage of fragmentation.
88.Pp 88.Pp
89If sent a 89If sent a
90.Dv QUIT 90.Dv QUIT
91signal, 91signal,
92.Nm 92.Nm
93will finish the file system checks, then exit with an abnormal return status. 93will finish the file system checks, then exit with an abnormal return status.
94.Pp 94.Pp
95If 95If
96.Nm 96.Nm
97receives a 97receives a
98.Dv SIGINFO 98.Dv SIGINFO
99signal 99signal
100(see the 100(see the
101.Sy status 101.Sy status
102argument for 102argument for
103.Xr stty 1 ) , 103.Xr stty 1 ) ,
104a line will be written to the standard error output indicating 104a line will be written to the standard error output indicating
105the name of the device currently being checked, the current phase 105the name of the device currently being checked, the current phase
106number and phase-specific progress information. 106number and phase-specific progress information.
107.Pp 107.Pp
108Without the 108Without the
109.Fl p 109.Fl p
110option, 110option,
111.Nm 111.Nm
112audits and interactively repairs inconsistent conditions for file systems. 112audits and interactively repairs inconsistent conditions for file systems.
113If the file system is inconsistent the operator is prompted for concurrence 113If the file system is inconsistent the operator is prompted for concurrence
114before each correction is attempted. 114before each correction is attempted.
115It should be noted that some of the corrective actions which are not 115It should be noted that some of the corrective actions which are not
116correctable under the 116correctable under the
117.Fl p 117.Fl p
118option will result in some loss of data. 118option will result in some loss of data.
119The amount and severity of data lost may be determined from the diagnostic 119The amount and severity of data lost may be determined from the diagnostic
120output. 120output.
121The default action for each consistency correction 121The default action for each consistency correction
122is to wait for the operator to respond 122is to wait for the operator to respond
123.Li yes 123.Li yes
124or 124or
125.Li no . 125.Li no .
126If the operator does not have write permission on the file system 126If the operator does not have write permission on the file system
127.Nm 127.Nm
128will default to a 128will default to a
129.Fl n 129.Fl n
130action. 130action.
131.Pp 131.Pp
132.Nm 132.Nm
133has more consistency checks than 133has more consistency checks than
134its predecessors 134its predecessors
135.Em check , dcheck , fcheck , 135.Em check , dcheck , fcheck ,
136and 136and
137.Em icheck 137.Em icheck
138combined. 138combined.
139.Pp 139.Pp
140The following flags are interpreted by 140The following flags are interpreted by
141.Nm . 141.Nm .
142.Bl -tag -width XBXbyteorderXX -offset indent 142.Bl -tag -width XBXbyteorderXX -offset indent
143.It Fl a 143.It Fl a
144Interpret the filesystem as an Apple UFS filesystem, even if 144Interpret the filesystem as an Apple UFS filesystem, even if
145there is no Apple UFS volume label present. 145there is no Apple UFS volume label present.
146.It Fl B Ar byteorder 146.It Fl B Ar byteorder
147Convert the file system metadata to 147Convert the file system metadata to
148.Ar byteorder 148.Ar byteorder
149byte order if needed. 149byte order if needed.
150Valid byte orders are 150Valid byte orders are
151.Dq be 151.Dq be
152and 152and
153.Dq le . 153.Dq le .
154If 154If
155.Nm 155.Nm
156is interrupted while swapping the metadata byte order, the file system cannot 156is interrupted while swapping the metadata byte order, the file system cannot
157be recovered. 157be recovered.
158.Nm 158.Nm
159will print a message in interactive mode if the file system is not in host 159will print a message in interactive mode if the file system is not in host
160byte order. 160byte order.
161.It Fl b Ar block 161.It Fl b Ar block
162Use the block number 162Use the block number
163.Ar block 163.Ar block
164as the super block for the file system. 164as the super block for the file system.
165Block 32 is usually an alternative super block. 165Block 32 is usually an alternative super block.
 166The
 167.Fl b
 168option of the
 169.Xr scan_ffs 8
 170utility can also be used to find the offset of other super block backups
 171in a file system.
166.It Fl c Ar level 172.It Fl c Ar level
167Convert the FFSv1 file system to the level 173Convert the FFSv1 file system to the level
168.Ar level . 174.Ar level .
169Note that the level of a file system can only be raised. 175Note that the level of a file system can only be raised.
170There are currently five levels defined: 176There are currently five levels defined:
171.Bl -tag -width 3n -offset indent 177.Bl -tag -width 3n -offset indent
172.It 0 178.It 0
173The file system is in the old (static table) format. 179The file system is in the old (static table) format.
174.It 1 180.It 1
175The file system is in the new (dynamic table) format. 181The file system is in the new (dynamic table) format.
176Such file systems are made by using the 182Such file systems are made by using the
177.Fl O Ar 0 183.Fl O Ar 0
178option to 184option to
179.Xr newfs 8 . 185.Xr newfs 8 .
180.It 2 186.It 2
181The file system supports 32-bit UIDs and GIDs, 187The file system supports 32-bit UIDs and GIDs,
182short symbolic links are stored in the inode, 188short symbolic links are stored in the inode,
183and directories have an added field showing the file type. 189and directories have an added field showing the file type.
184This format was introduced in 190This format was introduced in
185.Bx 4.4 . 191.Bx 4.4 .
186.It 3 192.It 3
187If maxcontig is greater than one, 193If maxcontig is greater than one,
188build the free segment maps to aid in finding contiguous sets of blocks. 194build the free segment maps to aid in finding contiguous sets of blocks.
189If maxcontig is equal to one, delete any existing segment maps. 195If maxcontig is equal to one, delete any existing segment maps.
190This was the default before 196This was the default before
191.Nx 2.0 . 197.Nx 2.0 .
192.It 4 198.It 4
193Rearrange the super block to the same layout as FFSv2; 199Rearrange the super block to the same layout as FFSv2;
194disable the rotational layout tables and per cylinder group 200disable the rotational layout tables and per cylinder group
195block totals. 201block totals.
196Such file systems are made by using the 202Such file systems are made by using the
197.Fl O Ar 1 203.Fl O Ar 1
198option to 204option to
199.Xr newfs 8 . 205.Xr newfs 8 .
200.El 206.El
201.Pp 207.Pp
202Note that FFSv2 file systems are always level 4. 208Note that FFSv2 file systems are always level 4.
203.Pp 209.Pp
204In interactive mode, 210In interactive mode,
205.Nm 211.Nm
206will list the conversion to be made 212will list the conversion to be made
207and ask whether the conversion should be done. 213and ask whether the conversion should be done.
208If a negative answer is given, 214If a negative answer is given,
209no further operations are done on the file system. 215no further operations are done on the file system.
210In preen mode, 216In preen mode,
211the conversion is listed and done if 217the conversion is listed and done if
212possible without user interaction. 218possible without user interaction.
213Conversion in preen mode is best used when all the file systems 219Conversion in preen mode is best used when all the file systems
214are being converted at once. 220are being converted at once.
215.Pp 221.Pp
216The output of 222The output of
217.Xr dumpfs 8 223.Xr dumpfs 8
218can be examined to determine the format of the file system 224can be examined to determine the format of the file system
219.Dq ( format 225.Dq ( format
220in the second line) 226in the second line)
221and the file system level 227and the file system level
222.Dq ( fslevel 228.Dq ( fslevel
223in the sixth line). 229in the sixth line).
224.It Fl d 230.It Fl d
225Print debugging output. 231Print debugging output.
226.It Fl F 232.It Fl F
227Indicates that 233Indicates that
228.Ar filesystem 234.Ar filesystem
229is a file system image, rather than a raw character device. 235is a file system image, rather than a raw character device.
230.Ar filesystem 236.Ar filesystem
231will be accessed 237will be accessed
232.Sq as-is , 238.Sq as-is ,
233and no attempts will be made to read a disklabel. 239and no attempts will be made to read a disklabel.
234.It Fl f 240.It Fl f
235Force checking of file systems. 241Force checking of file systems.
236Normally, if a file system is cleanly unmounted, the kernel will set a 242Normally, if a file system is cleanly unmounted, the kernel will set a
237.Dq clean flag 243.Dq clean flag
238in the file system super block, and 244in the file system super block, and
239.Nm 245.Nm
240will not check the file system. 246will not check the file system.
241This option forces 247This option forces
242.Nm 248.Nm
243to check the file system, regardless of the state of the clean flag. 249to check the file system, regardless of the state of the clean flag.
244.It Fl m Ar mode 250.It Fl m Ar mode
245Use the octal value 251Use the octal value
246.Ar mode 252.Ar mode
247as the permission bits to use when creating the 253as the permission bits to use when creating the
248.Pa lost+found 254.Pa lost+found
249directory rather than the default 1700. 255directory rather than the default 1700.
250In particular, systems that do not wish to have lost files accessible 256In particular, systems that do not wish to have lost files accessible
251by all users on the system should use a more restrictive 257by all users on the system should use a more restrictive
252set of permissions such as 700. 258set of permissions such as 700.
253.It Fl n 259.It Fl n
254Assume a no response to all questions asked by 260Assume a no response to all questions asked by
255.Nm 261.Nm
256except for 262except for
257.Ql CONTINUE? , 263.Ql CONTINUE? ,
258which is assumed to be affirmative; 264which is assumed to be affirmative;
259do not open the file system for writing. 265do not open the file system for writing.
260.It Fl P 266.It Fl P
261Display a progress meter for the file system check. 267Display a progress meter for the file system check.
262A new meter is displayed for each of the 5 file system check passes, unless 268A new meter is displayed for each of the 5 file system check passes, unless
263.Fl p 269.Fl p
264is specified, in which case only one meter for overall progress is displayed. 270is specified, in which case only one meter for overall progress is displayed.
265Progress meters are disabled if the 271Progress meters are disabled if the
266.Fl d 272.Fl d
267option is specified. 273option is specified.
268.It Fl p 274.It Fl p
269Specify 275Specify
270.Dq preen 276.Dq preen
271mode, described above. 277mode, described above.
272.It Fl q 278.It Fl q
273Quiet mode, do not output any messages for clean filesystems. 279Quiet mode, do not output any messages for clean filesystems.
274.It Fl U 280.It Fl U
275Resolve user ids to usernames. 281Resolve user ids to usernames.
276.It Fl X 282.It Fl X
277Similar to 283Similar to
278.Fl x 284.Fl x
279but uses a file system internal snapshot on the file system to be checked. 285but uses a file system internal snapshot on the file system to be checked.
280.It Fl x Ar snap-backup 286.It Fl x Ar snap-backup
281Use a snapshot with 287Use a snapshot with
282.Ar snap-backup 288.Ar snap-backup
283as backup to check a read-write mounted filesystem. 289as backup to check a read-write mounted filesystem.
284Must be used with 290Must be used with
285.Fl n . 291.Fl n .
286See 292See
287.Xr fss 4 293.Xr fss 4
288for more details. 294for more details.
289The point is to check an internally-consistent version of the 295The point is to check an internally-consistent version of the
290filesystem to find out if it is damaged; on failure one should unmount 296filesystem to find out if it is damaged; on failure one should unmount
291the filesystem and repair it. 297the filesystem and repair it.
292.It Fl y 298.It Fl y
293Assume a yes response to all questions asked by 299Assume a yes response to all questions asked by
294.Nm ; 300.Nm ;
295this should be used with great caution as this is a free license 301this should be used with great caution as this is a free license
296to continue after essentially unlimited trouble has been encountered. 302to continue after essentially unlimited trouble has been encountered.
297.El 303.El
298.Pp 304.Pp
299Inconsistencies checked are as follows: 305Inconsistencies checked are as follows:
300.Bl -enum -offset indent -compact 306.Bl -enum -offset indent -compact
301.It 307.It
302Blocks claimed by more than one inode or the free map. 308Blocks claimed by more than one inode or the free map.
303.It 309.It
304Blocks claimed by an inode outside the range of the file system. 310Blocks claimed by an inode outside the range of the file system.
305.It 311.It
306Incorrect link counts. 312Incorrect link counts.
307.It 313.It
308Size checks: 314Size checks:
309.Bl -item -offset indent -compact 315.Bl -item -offset indent -compact
310.It 316.It
311Directory size not a multiple of DIRBLKSIZ. 317Directory size not a multiple of DIRBLKSIZ.
312.It 318.It
313Partially truncated file. 319Partially truncated file.
314.El 320.El
315.It 321.It
316Bad inode format. 322Bad inode format.
317.It 323.It
318Blocks not accounted for anywhere. 324Blocks not accounted for anywhere.
319.It 325.It
320Directory checks: 326Directory checks:
321.Bl -item -offset indent -compact 327.Bl -item -offset indent -compact
322.It 328.It
323File pointing to unallocated inode. 329File pointing to unallocated inode.
324.It 330.It
325Inode number out of range. 331Inode number out of range.
326.It 332.It
327Dot or dot-dot not the first two entries of a directory 333Dot or dot-dot not the first two entries of a directory
328or having the wrong inode number. 334or having the wrong inode number.
329.El 335.El
330.It 336.It
331Super Block checks: 337Super Block checks:
332.Bl -item -offset indent -compact 338.Bl -item -offset indent -compact
333.It 339.It
334More blocks for inodes than there are in the file system. 340More blocks for inodes than there are in the file system.
335.It 341.It
336Bad free block map format. 342Bad free block map format.
337.It 343.It
338Total free block and/or free inode count incorrect. 344Total free block and/or free inode count incorrect.
339.El 345.El
340.El 346.El
341.Pp 347.Pp
342Orphaned files and directories (allocated but unreferenced) are, 348Orphaned files and directories (allocated but unreferenced) are,
343with the operator's concurrence, reconnected by 349with the operator's concurrence, reconnected by
344placing them in the 350placing them in the
345.Pa lost+found 351.Pa lost+found
346directory. 352directory.
347The name assigned is the inode number. 353The name assigned is the inode number.
348If the 354If the
349.Pa lost+found 355.Pa lost+found
350directory does not exist, it is created. 356directory does not exist, it is created.
351If there is insufficient space its size is increased. 357If there is insufficient space its size is increased.
352.Pp 358.Pp
353Because of inconsistencies between the block device and the buffer cache, 359Because of inconsistencies between the block device and the buffer cache,
354the raw device should always be used. 360the raw device should always be used.
355.Sh DIAGNOSTICS 361.Sh DIAGNOSTICS
356The diagnostics produced by 362The diagnostics produced by
357.Nm 363.Nm
358are fully enumerated and explained in Appendix A of 364are fully enumerated and explained in Appendix A of
359.Rs 365.Rs
360.%T "Fsck \- The UNIX File System Check Program" 366.%T "Fsck \- The UNIX File System Check Program"
361.Re 367.Re
362.Sh SEE ALSO 368.Sh SEE ALSO
363.Xr fss 4 , 369.Xr fss 4 ,
364.Xr fs 5 , 370.Xr fs 5 ,
365.Xr fstab 5 , 371.Xr fstab 5 ,
366.Xr dumpfs 8 , 372.Xr dumpfs 8 ,
367.Xr fsck 8 , 373.Xr fsck 8 ,
368.Xr fsdb 8 , 374.Xr fsdb 8 ,
369.Xr newfs 8 , 375.Xr newfs 8 ,
370.Xr reboot 8 376.Xr reboot 8 ,
 377.Xr scan_ffs 8