Whamcloud - gitweb
06a7834222723bd8a8341f36665389dba4bd82db
[tools/e2fsprogs.git] / misc / fsck.8.in
1 .\" -*- nroff -*-
2 .\" Copyright 1993, 1994, 1995 by Theodore Ts'o.  All Rights Reserved.
3 .\" This file may be copied under the terms of the GNU Public License.
4 .\" 
5 .TH FSCK 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@"
6 .SH NAME
7 fsck \- check and repair a Linux file system
8 .SH SYNOPSIS
9 .B fsck
10 [
11 .B \-sACVRTNP
12 ]
13 [
14 .B \-t
15 .I fstype
16 ] [\-\-] [
17 .B fsck-options
18 ]
19 .I filesys [ ... ]
20 .SH DESCRIPTION
21 .B fsck
22 is used to check and optionally repair a one or more Linux file systems.  
23 .I filesys
24 can be a device name (e.g.
25 .IR /dev/hdc1 ", " /dev/sdb2 ),
26 a mount point (e.g.
27 .IR / ", " /usr ", " /home ),
28 or an ext2 label or UUID specifier (e.g.
29 UUID=8868abf6-88c5-4a83-98b8-bfc24057f7bd or LABEL=root).  
30 The 
31 .B fsck 
32 program will try to run filesystems on different physical disk drives 
33 in parallel to reduce total amount time to check all of the filesystems.
34 .PP
35 The exit code returned by
36 .B fsck
37 is the sum of the following conditions:
38 .br
39 \       0\      \-\ No errors
40 .br
41 \       1\      \-\ File system errors corrected
42 .br
43 \       2\      \-\ System should be rebooted
44 .br
45 \       4\      \-\ File system errors left uncorrected
46 .br
47 \       8\      \-\ Operational error
48 .br
49 \       16\     \-\ Usage or syntax error
50 .br
51 \       128\    \-\ Shared library error
52 .br
53 The exit code returned when all file systems are checked using the
54 .B \-A
55 option is the bit-wise OR of the exit codes for each
56 file system that is checked.
57 .PP
58 In actuality,
59 .B fsck
60 is simply a front-end for the various file system checkers
61 (\fBfsck\fR.\fIfstype\fR) available under Linux.  The file
62 system-specific checker is searched for in
63 .I /sbin
64 first, then in
65 .I /etc/fs
66 and
67 .IR /etc ,
68 and finally in the directories listed in the PATH environment
69 variable.  Please see the file system-specific checker manual pages for
70 further details.
71 .SH OPTIONS
72 .TP
73 .B \-s
74 Serialize 
75 .B fsck 
76 operations.  This is a good idea if you checking multiple
77 filesystems and the checkers are in an interactive mode.  (Note:
78 .BR e2fsck (8)
79 runs in an interactive mode by default.  To make 
80 .BR e2fsck (8)
81 run in a non-interactive mode, you must either specify the
82 .B \-p
83 or
84 .B \-a
85 option, if you wish for errors to be corrected automatically, or the 
86 .B \-n
87 option if you do not.)
88 .TP
89 .BI \-t " fstype"
90 Specifies the type of file system to be checked.  When the
91 .B \-A 
92 flag is specified, only filesystems that match 
93 .I fstype
94 are checked.  If 
95 .I fstype
96 is prefixed with 
97 .I no
98 then only filesystems whose type does not match
99 .I fstype
100 are checked.
101 .sp
102 Normally, the filesystem type is deduced by searching for
103 .I filesys
104 in the 
105 .I /etc/fstab 
106 file and using the corresponding entry.
107 If the type can not be deduced, 
108 .B fsck
109 will use the type specified by the 
110 .B \-t
111 option if it specifies a unique filesystem type.  If this type is not
112 available, then the default file system type (currently ext2) is used. 
113 .TP
114 .B \-A
115 Walk through the
116 .I /etc/fstab
117 file and try to check all file systems in one run.  This option is
118 typically used from the
119 .I /etc/rc
120 system initalization file, instead of multiple commands for checking
121 a single file system.
122 .sp
123 The root filesystem will be checked first unless the
124 .B \-P
125 option is specified (see below).  After that, 
126 filesystems will be checked in the order specified by the 
127 .I fs_passno 
128 (the sixth) field in the 
129 .I /etc/fstab
130 file.  
131 Filesystems with a 
132 .I fs_passno
133 value of 0 are skipped and are not checked at all.
134 If there are multiple filesystems with the same pass number, 
135 fsck will attempt to check them in parallel, although it will avoid running 
136 multiple filesystem checks on the same physical disk.  
137 Hence, a very common configuration in 
138 .I /etc/fstab
139 files is to set the root filesystem to have a 
140 .I fs_passno
141 value of 1
142 and to set all filesystems to have a
143 .I fs_passno
144 value of 2.  This will allow
145 .B fsck
146 to automatically run filesystem checkers in parallel if it is advantageous
147 to do so.  System administrators might choose
148 not to use this configuration if they need to avoid multiple filesystem
149 checks running in parallel for some reason --- for example, if the
150 machine in question is short on memory so that
151 excessive paging is a concern.
152 .TP
153 .B \-C
154 Display completion/progress bars for those filesystems checkers (currently
155 only for ext2) which support them.   Fsck will manage the filesystem checkers
156 so that only one of them will display a progress bar at a time.
157 .TP
158 .B \-N
159 Don't execute, just show what would be done.
160 .TP
161 .B \-P
162 When the 
163 .B \-A
164 flag is set, check the root filesystem in parallel with the other filesystems.
165 This is not the safest thing in the world to do,
166 since if the root filesystem is in doubt things like the 
167 .BR e2fsck (8) 
168 executable might be corrupted!  This option is mainly provided
169 for those sysadmins who don't want to repartition the root
170 filesystem to be small and compact (which is really the right solution).
171 .TP
172 .B \-R
173 When checking all file systems with the
174 .B \-A
175 flag, skip the root file system (in case it's already mounted read-write).
176 .TP
177 .B \-T
178 Don't show the title on startup.
179 .TP
180 .B \-V
181 Produce verbose output, including all file system-specific commands
182 that are executed.
183 .TP
184 .B fsck-options
185 Options which which are not understood by 
186 .B fsck 
187 are passed to the filesystem-specific checker.  These arguments
188 .B must
189 not take arguments, as there is no
190 way for 
191 .B fsck
192 to be able to properly guess which arguments take options and which
193 don't.
194 .IP
195 Options and arguments which follow the
196 .B \-\-
197 are treated as file system-specific options to be passed to the
198 file system-specific checker.
199 .IP
200 Please note that fsck is not
201 designed to pass arbitrarily complicated options to filesystem-specific
202 checkers.  If you're doing something complicated, please just
203 execute the filesystem-specific checker directly.  If you pass 
204 .B fsck
205 some horribly complicated option and arguments, and it doesn't do
206 what you expect, 
207 .B don't bother reporting it as a bug.
208 You're almost certainly doing something that you shouldn't be doing
209 with 
210 .BR fsck.
211 .PP
212 Currently, standardized file system-specific options are somewhat in
213 flux.  Although not guaranteed, the following options are supported
214 by most file system checkers:
215 .TP
216 .B \-a
217 Automatically repair the file system without any questions (use
218 this option with caution).  Note that 
219 .BR e2fsck (8)
220 supports 
221 .B \-a
222 for backwards compatibility only.  This option is mapped to 
223 .BR e2fsck 's
224 .B \-p
225 option which is safe to use, unlike the 
226 .B \-a 
227 option that most file system checkers support.
228 .TP
229 .B \-r
230 Interactively repair the filesystem (ask for confirmations).  Note: It
231 is generally a bad idea to use this option if multiple fsck's are being
232 run in parallel.  Also note that this is 
233 .BR e2fsck 's
234 default behavior; it supports this option for backwards compatibility
235 reasons only.
236 .SH AUTHOR
237 Theodore Ts'o (tytso@mit.edu)
238 .PP
239 The manual page was shamelessly adapted from David Engel and Fred van
240 Kempen's generic 
241 .B fsck
242 front end program, which was in turn shamelessly
243 adapted from Remy Card's version for the ext2 file system.
244 .SH FILES
245 .IR /etc/fstab .
246 .SH SEE ALSO
247 .BR fstab (5),
248 .BR mkfs (8),
249 .BR fsck.minix (8),
250 .BR fsck.ext2 (8)
251 or
252 .BR e2fsck (8),
253 .BR fsck.xiafs (8).