OSDN Git Service

Merge branch 'maint' into next
[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 or ext3 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.  If true, e2fsck will not abort a preen check if it detects a
122 last mounted or last write time in the superblock in the future.  This
123 setting defaults to false.
124 .TP
125 .I clear_test_fs_flag
126 This boolean relation controls whether or not 
127 .BR e2fsck (8)
128 will offer to clear
129 the test_fs flag if the ext4 filesystem is available on the system.  It
130 defaults to true.
131 .TP 
132 .I defer_check_on_battery
133 This boolean relation controls whether or not the interval between 
134 filesystem checks (either based on time or number of mounts) should 
135 be doubled if the system is running on battery.  This setting defaults to 
136 true.
137 .TP
138 .I indexed_dir_slack_percentage
139 When
140 .BR e2fsck (8)
141 repacks a indexed directory, reserve the specified percentage of
142 empty space in each leaf nodes so that a few new entries can
143 be added to the directory without splitting leaf nodes, so that
144 the average fill ratio of directories can be maintained at a
145 higher, more efficient level.  This relation defaults to 20
146 percent.
147 .SH THE [problems] STANZA
148 Each tag in the
149 .I [problems] 
150 stanza names a problem code specified with a leading "0x" followed by
151 six hex digits.   
152 The value of the tag is a subsection where the relations in that
153 subsection override the default treatment of that particular problem 
154 code.
155 .P
156 Note that inappropriate settings in this stanza may cause 
157 .B e2fsck
158 to behave incorrectly, or even crash.  Most system administrators should
159 not be making changes to this section without referring to source code.
160 .P
161 Within each problem code's subsection, the following tags may be used:
162 .TP
163 .I description
164 This relation allows the message which is printed when this filesystem
165 inconsistency is detected to be overridden.
166 .TP
167 .I preen_ok
168 This boolean relation overrides the default behavior controlling 
169 whether this filesystem problem should be automatically fixed when
170 .B e2fsck
171 is running in preen mode.
172 .TP
173 .I no_ok
174 This boolean relation overrides the default behavior determining
175 whether or not the filesystem will be marked as inconsistent if the user
176 declines to fix the reported problem.
177 .TP
178 .I no_default
179 This boolean relation overrides whether the default answer for this 
180 problem (or question) should be "no".
181 .TP 
182 .I preen_nomessage
183 This boolean relation overrides the default behavior controlling 
184 whether or not the description for this filesystem problem should
185 be suppressed when
186 .B e2fsck
187 is running in preen mode.
188 .TP
189 .I no_nomsg
190 This boolean relation overrides the default behavior controlling 
191 whether or not the description for this filesystem problem should
192 be suppressed when
193 .B e2fsck
194 is run with the
195 .B -n
196 option.
197 .SH THE [scratch_files] STANZA
198 The following relations are defined in the 
199 .I [scratch_files]
200 stanza.
201 .TP
202 .I directory
203 If the directory named by this relation exists and is writeable, then
204 e2fsck will attempt to use this directory to store scratch files instead
205 of using in-memory data structures.
206 .TP
207 .I numdirs_threshold
208 If this relation is set, then in-memory data structures be used if the
209 number of directories in the filesystem are fewer than amount specified.
210 .TP
211 .I dirinfo
212 This relation controls whether or not the scratch file directory is used
213 instead of an in-memory data structure for directory information.  It
214 defaults to true.
215 .TP
216 .I icount
217 This relation controls whether or not the scratch file directory is used
218 instead of an in-memory data structure when tracking inode counts.  It
219 defaults to true.
220 .SH EXAMPLES
221 The following recipe will prevent e2fsck from aborting during the boot
222 process when a filesystem contains orphaned files.  (Of course, this is
223 not always a good idea, since critical files that are needed for the
224 security of the system could potentially end up in lost+found, and
225 starting the system without first having a system administrator check
226 things out may be dangerous.)
227 .P
228 .br
229         [problems]
230 .br
231                 0x040002 = {
232 .br
233                         preen_ok = true
234 .br
235                         description = "@u @i %i.  "
236 .br
237                 }
238 .SH FILES
239 .TP
240 .I /etc/e2fsck.conf
241 The configuration file for 
242 .BR e2fsck (8).
243 .SH SEE ALSO
244 .BR e2fsck (8)