OSDN Git Service

am 766baba9: am a8948fce: Revert "Better fix for marking fs err in superblock if...
[android-x86/external-e2fsprogs.git] / e2fsck / e2fsck.conf.5.in
1 .\" -*- nroff -*-
2 .\" Copyright 2006 by Theodore Ts'o.  All Rights Reserved.
3 .\" This file may be copied under the terms of the GNU Public License.
4 .\" 
5 .TH e2fsck.conf 5 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@"
6 .SH NAME
7 e2fsck.conf \- Configuration file for e2fsck
8 .SH DESCRIPTION
9 .I e2fsck.conf
10 is the configuration file for 
11 .BR e2fsck (8).  
12 It controls the default behavior of 
13 .BR e2fsck (8)
14 while it is checking ext2, ext3, or ext4 filesystems.
15 .PP
16 The
17 .I e2fsck.conf
18 file uses an INI-style format.  Stanzas, or top-level sections, are 
19 delimited by square braces: [ ].  Within each section, each line 
20 defines a relation, which assigns tags to values, or to a subsection,
21 which contains further relations or subsections.   
22 .\" Tags can be assigned multiple values
23 An example of the INI-style format used by this configuration file 
24 follows below:
25 .P
26         [section1]
27 .br
28                 tag1 = value_a
29 .br
30                 tag1 = value_b
31 .br
32                 tag2 = value_c
33 .P
34         [section 2]
35 .br
36                 tag3 = {
37 .br
38                         subtag1 = subtag_value_a
39 .br
40                         subtag1 = subtag_value_b
41 .br
42                         subtag2 = subtag_value_c
43 .br
44                 }
45 .br
46                 tag1 = value_d
47 .br
48                 tag2 = value_e
49 .br
50         }
51 .P
52 Comments are delimited by a semicolon (';') or a hash ('#') character 
53 at the beginning of the comment, and are terminated by the end of 
54 line character.
55 .P
56 Tags and values must be quoted using double quotes if they contain
57 spaces.  Within a quoted string, the standard backslash interpretations 
58 apply: "\en" (for the newline character), 
59 "\et" (for the tab character), "\eb" (for the backspace character), 
60 and "\e\e" (for the backslash character).
61 .P
62 The following stanzas are used in the 
63 .I e2fsck.conf
64 file.  They will be described in more detail in future sections of this
65 document.
66 .TP 
67 .I [options]
68 This stanza contains general configuration parameters for 
69 .BR e2fsck 's
70 behavior.
71 .TP
72 .I [problems]
73 This stanza allows the administrator to reconfigure how e2fsck handles
74 various filesystem inconsistencies.
75 .TP
76 .I [scratch_files]
77 This stanza controls when e2fsck will attempt to use scratch files to
78 reduce the need for memory.
79 .SH THE [options] STANZA
80 The following relations are defined in the 
81 .I [options]
82 stanza.
83 .TP
84 .I allow_cancellation
85 If this relation is set to a boolean value of true, then if the user 
86 interrupts e2fsck using ^C, and the filesystem is not explicitly flagged
87 as containing errors, e2fsck will exit with an exit status of 0 instead
88 of 32.  This setting defaults to false.
89 .TP
90 .I accept_time_fudge
91 Unfortunately, due to Windows' unfortunate design decision
92 to configure the hardware clock to tick localtime, instead
93 of the more proper and less error-prone UTC time, many
94 users end up in the situation where the system clock is
95 incorrectly set at the time when e2fsck is run.
96 .IP
97 Historically this was usually due to some distributions
98 having buggy init scripts and/or installers that didn't
99 correctly detect this case and take appropriate
100 countermeasures.  However, it's still possible, despite the
101 best efforts of init script and installer authors to not be
102 able to detect this misconfiguration, usually due to a
103 buggy or misconfigured virtualization manager or the
104 installer not having access to a network time server
105 during the installation process.  So by default, we allow
106 the superblock times to be fudged by up to 24 hours.
107 This can be disabled by setting
108 .I accept_time_fudge
109 to the
110 boolean value of false.  This setting defaults to true.
111 .TP
112 .I broken_system_clock
113 The
114 .BR e2fsck (8)
115 program has some hueristics that assume that the system clock is
116 correct.  In addition, many system programs make similar assumptions.
117 For example, the UUID library depends on time not going backwards in
118 order for it to be able to make its guarantees about issuing universally
119 unique ID's.  Systems with broken system clocks, are well, broken.
120 However, broken system clocks, particularly in embedded systems, do
121 exist.  E2fsck will attempt to use hueristics to determine if the time
122 can no tbe trusted; and to skip time-based checks if this is true.  If
123 this boolean is set to true, then e2fsck will always assume that the
124 system clock can not be trusted.
125 .TP
126 .I clear_test_fs_flag
127 This boolean relation controls whether or not 
128 .BR e2fsck (8)
129 will offer to clear
130 the test_fs flag if the ext4 filesystem is available on the system.  It
131 defaults to true.
132 .TP 
133 .I defer_check_on_battery
134 This boolean relation controls whether or not the interval between 
135 filesystem checks (either based on time or number of mounts) should 
136 be doubled if the system is running on battery.  This setting defaults to 
137 true.
138 .TP
139 .I indexed_dir_slack_percentage
140 When
141 .BR e2fsck (8)
142 repacks a indexed directory, reserve the specified percentage of
143 empty space in each leaf nodes so that a few new entries can
144 be added to the directory without splitting leaf nodes, so that
145 the average fill ratio of directories can be maintained at a
146 higher, more efficient level.  This relation defaults to 20
147 percent.
148 .SH THE [problems] STANZA
149 Each tag in the
150 .I [problems] 
151 stanza names a problem code specified with a leading "0x" followed by
152 six hex digits.   
153 The value of the tag is a subsection where the relations in that
154 subsection override the default treatment of that particular problem 
155 code.
156 .P
157 Note that inappropriate settings in this stanza may cause 
158 .B e2fsck
159 to behave incorrectly, or even crash.  Most system administrators should
160 not be making changes to this section without referring to source code.
161 .P
162 Within each problem code's subsection, the following tags may be used:
163 .TP
164 .I description
165 This relation allows the message which is printed when this filesystem
166 inconsistency is detected to be overridden.
167 .TP
168 .I preen_ok
169 This boolean relation overrides the default behavior controlling 
170 whether this filesystem problem should be automatically fixed when
171 .B e2fsck
172 is running in preen mode.
173 .TP
174 .I no_ok
175 This boolean relation overrides the default behavior determining
176 whether or not the filesystem will be marked as inconsistent if the user
177 declines to fix the reported problem.
178 .TP
179 .I no_default
180 This boolean relation overrides whether the default answer for this 
181 problem (or question) should be "no".
182 .TP 
183 .I preen_nomessage
184 This boolean relation overrides the default behavior controlling 
185 whether or not the description for this filesystem problem should
186 be suppressed when
187 .B e2fsck
188 is running in preen mode.
189 .TP
190 .I no_nomsg
191 This boolean relation overrides the default behavior controlling 
192 whether or not the description for this filesystem problem should
193 be suppressed when a problem forced not to be fixed, either because
194 .B e2fsck
195 is run with the
196 .B -n
197 option or because the
198 .I force_no
199 flag has been set for the problem.
200 .TP
201 .I force_no
202 This boolean option, if set to true, forces a problem to never be fixed.
203 That is, it will be as if the user problem responds 'no' to the question
204 of 'should this problem be fixed?'.  The
205 .I force_no
206 option even overrides the
207 .B -y
208 option given on the command-line (just for the specific problem, of course).
209 .SH THE [scratch_files] STANZA
210 The following relations are defined in the 
211 .I [scratch_files]
212 stanza.
213 .TP
214 .I directory
215 If the directory named by this relation exists and is writeable, then
216 e2fsck will attempt to use this directory to store scratch files instead
217 of using in-memory data structures.
218 .TP
219 .I numdirs_threshold
220 If this relation is set, then in-memory data structures be used if the
221 number of directories in the filesystem are fewer than amount specified.
222 .TP
223 .I dirinfo
224 This relation controls whether or not the scratch file directory is used
225 instead of an in-memory data structure for directory information.  It
226 defaults to true.
227 .TP
228 .I icount
229 This relation controls whether or not the scratch file directory is used
230 instead of an in-memory data structure when tracking inode counts.  It
231 defaults to true.
232 .SH EXAMPLES
233 The following recipe will prevent e2fsck from aborting during the boot
234 process when a filesystem contains orphaned files.  (Of course, this is
235 not always a good idea, since critical files that are needed for the
236 security of the system could potentially end up in lost+found, and
237 starting the system without first having a system administrator check
238 things out may be dangerous.)
239 .P
240 .br
241         [problems]
242 .br
243                 0x040002 = {
244 .br
245                         preen_ok = true
246 .br
247                         description = "@u @i %i.  "
248 .br
249                 }
250 .SH FILES
251 .TP
252 .I /etc/e2fsck.conf
253 The configuration file for 
254 .BR e2fsck (8).
255 .SH SEE ALSO
256 .BR e2fsck (8)