]>
Commit | Line | Data |
---|---|---|
3839e657 | 1 | .\" -*- nroff -*- |
a418d3ad TT |
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. | |
98794d0e | 4 | .\" |
74becf3c | 5 | .TH MKE2FS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" |
3839e657 | 6 | .SH NAME |
4f858546 | 7 | mke2fs \- create an ext2/ext3/ext4 filesystem |
3839e657 TT |
8 | .SH SYNOPSIS |
9 | .B mke2fs | |
10 | [ | |
11 | .B \-c | |
98794d0e | 12 | | |
3839e657 | 13 | .B \-l |
1e3472c5 | 14 | .I filename |
3839e657 TT |
15 | ] |
16 | [ | |
17 | .B \-b | |
1e3472c5 | 18 | .I block-size |
3839e657 TT |
19 | ] |
20 | [ | |
21 | .B \-f | |
1e3472c5 | 22 | .I fragment-size |
3839e657 TT |
23 | ] |
24 | [ | |
5e05541a TT |
25 | .B \-g |
26 | .I blocks-per-group | |
27 | ] | |
28 | [ | |
9ba40002 TT |
29 | .B \-G |
30 | .I number-of-groups | |
31 | ] | |
32 | [ | |
3839e657 | 33 | .B \-i |
1e3472c5 | 34 | .I bytes-per-inode |
3839e657 TT |
35 | ] |
36 | [ | |
067911ae AD |
37 | .B \-I |
38 | .I inode-size | |
39 | ] | |
40 | [ | |
85ef4ae8 | 41 | .B \-j |
dc2ec525 TT |
42 | ] |
43 | [ | |
44 | .B \-J | |
8ddaa66b | 45 | .I journal-options |
85ef4ae8 TT |
46 | ] |
47 | [ | |
5515e6b4 TT |
48 | .B \-N |
49 | .I number-of-inodes | |
50 | ] | |
51 | [ | |
a26ba650 | 52 | .B \-n |
2740156b TT |
53 | ] |
54 | [ | |
3839e657 | 55 | .B \-m |
1e3472c5 TT |
56 | .I reserved-blocks-percentage |
57 | ] | |
58 | [ | |
59 | .B \-o | |
60 | .I creator-os | |
3839e657 TT |
61 | ] |
62 | [ | |
98794d0e | 63 | .B \-O |
896938d5 TT |
64 | .IR feature [,...] |
65 | ] | |
66 | [ | |
f3db3566 TT |
67 | .B \-q |
68 | ] | |
69 | [ | |
caf8ce4c TT |
70 | .B \-r |
71 | .I fs-revision-level | |
a29f4d30 TT |
72 | ] |
73 | [ | |
c6a44136 TT |
74 | .B \-E |
75 | .I extended-options | |
521e3685 TT |
76 | ] |
77 | [ | |
3839e657 TT |
78 | .B \-v |
79 | ] | |
f3db3566 | 80 | [ |
74becf3c TT |
81 | .B \-F |
82 | ] | |
83 | [ | |
1e3472c5 TT |
84 | .B \-L |
85 | .I volume-label | |
86 | ] | |
87 | [ | |
88 | .B \-M | |
89 | .I last-mounted-directory | |
90 | ] | |
91 | [ | |
f3db3566 TT |
92 | .B \-S |
93 | ] | |
818180cd | 94 | [ |
3d43836f TT |
95 | .B \-t |
96 | .I fs-type | |
97 | ] | |
98 | [ | |
50787ea2 | 99 | .B \-T |
3d43836f | 100 | .I usage-type |
50787ea2 TT |
101 | ] |
102 | [ | |
b0afdda1 TT |
103 | .B \-U |
104 | .I UUID | |
105 | ] | |
106 | [ | |
818180cd TT |
107 | .B \-V |
108 | ] | |
1e3472c5 | 109 | .I device |
3839e657 | 110 | [ |
1e3472c5 | 111 | .I blocks-count |
3839e657 | 112 | ] |
48015ced | 113 | @JDEV@.sp |
8d641749 | 114 | @JDEV@.B "mke2fs \-O journal_dev" |
48015ced TT |
115 | @JDEV@[ |
116 | @JDEV@.B \-b | |
117 | @JDEV@.I block-size | |
118 | @JDEV@] | |
8d641749 | 119 | .\" No external-journal specific journal options yet (size is ignored) |
48015ced TT |
120 | .\" @JDEV@[ |
121 | .\" @JDEV@.B \-J | |
122 | .\" @JDEV@.I journal-options | |
123 | .\" @JDEV@] | |
124 | @JDEV@[ | |
125 | @JDEV@.B \-L | |
126 | @JDEV@.I volume-label | |
127 | @JDEV@] | |
128 | @JDEV@[ | |
129 | @JDEV@.B \-n | |
130 | @JDEV@] | |
131 | @JDEV@[ | |
132 | @JDEV@.B \-q | |
133 | @JDEV@] | |
134 | @JDEV@[ | |
135 | @JDEV@.B \-v | |
136 | @JDEV@] | |
8d641749 | 137 | @JDEV@.I external-journal |
2d15576d AD |
138 | @JDEV@[ |
139 | @JDEV@.I blocks-count | |
140 | @JDEV@] | |
3839e657 TT |
141 | .SH DESCRIPTION |
142 | .B mke2fs | |
4f858546 TT |
143 | is used to create an ext2, ext3, or ext4 filesystem, usually in a disk |
144 | partition. | |
3839e657 | 145 | .I device |
98794d0e | 146 | is the special file corresponding to the device (e.g |
caf8ce4c | 147 | .IR /dev/hdXX ). |
3839e657 TT |
148 | .I blocks-count |
149 | is the number of blocks on the device. If omitted, | |
150 | .B mke2fs | |
0072f8de AD |
151 | automagically figures the file system size. If called as |
152 | .B mkfs.ext3 | |
153 | a journal is created as if the | |
154 | .B \-j | |
155 | option was specified. | |
de7a86e2 TT |
156 | .PP |
157 | The defaults of the parameters for the newly created filesystem, if not | |
158 | overridden by the options listed below, are controlled by the | |
159 | .B /etc/mke2fs.conf | |
160 | configuration file. See the | |
161 | .BR mke2fs.conf (5) | |
162 | manual page for more details. | |
3839e657 TT |
163 | .SH OPTIONS |
164 | .TP | |
caf8ce4c | 165 | .BI \-b " block-size" |
98794d0e | 166 | Specify the size of blocks in bytes. Valid block-size values are 1024, |
06968e7e | 167 | 2048 and 4096 bytes per block. If omitted, |
98794d0e | 168 | block-size is heuristically determined by the filesystem size and |
c5290fae | 169 | the expected usage of the filesystem (see the |
06968e7e | 170 | .B \-T |
98794d0e | 171 | option). If |
c5290fae | 172 | .I block-size |
eddf36ba | 173 | is preceded by a negative sign ('-'), then |
c6a44136 TT |
174 | .B mke2fs |
175 | will use heuristics to determine the | |
c5290fae | 176 | appropriate block size, with the constraint that the block size will be |
98794d0e | 177 | at least |
c5290fae TT |
178 | .I block-size |
179 | bytes. This is useful for certain hardware devices which require that | |
180 | the blocksize be a multiple of 2k. | |
3839e657 | 181 | .TP |
caf8ce4c | 182 | .B \-c |
3ed57c27 | 183 | Check the device for bad blocks before creating the file system. If |
98794d0e | 184 | this option is specified twice, then a slower read-write |
3ed57c27 | 185 | test is used instead of a fast read-only test. |
3839e657 | 186 | .TP |
c6a44136 TT |
187 | .BI \-E " extended-options" |
188 | Set extended options for the filesystem. Extended options are comma | |
189 | separated, and may take an argument using the equals ('=') sign. The | |
a26ba650 | 190 | .B \-E |
98794d0e | 191 | option used to be |
a26ba650 | 192 | .B \-R |
98794d0e | 193 | in earlier versions of |
c6a44136 | 194 | .BR mke2fs . |
98794d0e | 195 | The |
a26ba650 | 196 | .B \-R |
98794d0e | 197 | option is still accepted for backwards compatibility. The |
c6a44136 TT |
198 | following extended options are supported: |
199 | .RS 1.2i | |
200 | .TP | |
0c17cb25 | 201 | .BI stride= stride-size |
c6a44136 | 202 | Configure the filesystem for a RAID array with |
0c17cb25 TT |
203 | .I stride-size |
204 | filesystem blocks. This is the number of blocks read or written to disk | |
98794d0e | 205 | before moving to the next disk, which is sometimes referred to as the |
2ac7f066 TT |
206 | .I chunk size. |
207 | This mostly affects placement of filesystem metadata like bitmaps at | |
a4396e9d | 208 | .B mke2fs |
98794d0e BS |
209 | time to avoid placing them on a single disk, which can hurt performance. |
210 | It may also be used by the block allocator. | |
0c17cb25 | 211 | .TP |
d4c0d8e5 | 212 | .BI stripe_width= stripe-width |
0c17cb25 TT |
213 | Configure the filesystem for a RAID array with |
214 | .I stripe-width | |
98794d0e | 215 | filesystem blocks per stripe. This is typically stride-size * N, where |
2ac7f066 | 216 | N is the number of data-bearing disks in the RAID (e.g. for RAID 5 there is one |
98794d0e | 217 | parity disk, so N will be the number of disks in the array minus 1). |
0c17cb25 TT |
218 | This allows the block allocator to prevent read-modify-write of the |
219 | parity in a RAID stripe if possible when the data is written. | |
c6a44136 TT |
220 | .TP |
221 | .BI resize= max-online-resize | |
222 | Reserve enough space so that the block group descriptor table can grow | |
98794d0e BS |
223 | to support a filesystem that has |
224 | .I max-online-resize | |
225 | blocks. | |
6cb27404 | 226 | .TP |
3b4a66cf | 227 | .B lazy_itable_init\fR[\fB= \fI<0 to disable, 1 to enable>\fR] |
a4396e9d | 228 | If enabled and the uninit_bg feature is enabled, the inode table will |
98794d0e | 229 | not be fully initialized by |
a4396e9d TT |
230 | .BR mke2fs . |
231 | This speeds up filesystem | |
98794d0e | 232 | initialization noticeably, but it requires the kernel to finish |
a4396e9d | 233 | initializing the filesystem in the background when the filesystem is |
43781b94 | 234 | first mounted. If the option value is omitted, it defaults to 1 to |
6c54689f AD |
235 | enable lazy inode table zeroing. |
236 | .TP | |
237 | .B lazy_journal_init\fR[\fB= \fI<0 to disable, 1 to enable>\fR] | |
238 | If enabled, the journal inode will not be fully zeroed out by | |
239 | .BR mke2fs . | |
240 | This speeds up filesystem initialization noticeably, but carries some | |
241 | small risk if the system crashes before the journal has been overwritten | |
242 | entirely one time. If the option value is omitted, it defaults to 1 to | |
243 | enable lazy journal inode zeroing. | |
a4396e9d | 244 | .TP |
6cb27404 TT |
245 | .B test_fs |
246 | Set a flag in the filesystem superblock indicating that it may be | |
247 | mounted using experimental kernel code, such as the ext4dev filesystem. | |
0bc85dfb LC |
248 | .TP |
249 | .BI discard | |
250 | Attempt to discard blocks at mkfs time (discarding blocks initially is useful | |
251 | on solid state devices and sparse / thin-provisioned storage). When the device | |
252 | advertises that discard also zeroes data (any subsequent read after the discard | |
253 | and before write returns zero), then mark all not-yet-zeroed inode tables as | |
254 | zeroed. This significantly speeds up filesystem initialization. This is set | |
255 | as default. | |
256 | .TP | |
257 | .BI nodiscard | |
855a77a1 | 258 | Do not attempt to discard blocks at mkfs time. |
c6a44136 TT |
259 | .RE |
260 | .TP | |
caf8ce4c | 261 | .BI \-f " fragment-size" |
3839e657 TT |
262 | Specify the size of fragments in bytes. |
263 | .TP | |
48015ced | 264 | .B \-F |
98794d0e | 265 | Force |
48015ced | 266 | .B mke2fs |
c16e610c AD |
267 | to create a filesystem, even if the specified device is not a partition |
268 | on a block special device, or if other parameters do not make sense. | |
98794d0e | 269 | In order to force |
c16e610c | 270 | .B mke2fs |
98794d0e | 271 | to create a filesystem even if the filesystem appears to be in use |
c16e610c AD |
272 | or is mounted (a truly dangerous thing to do), this option must be |
273 | specified twice. | |
48015ced | 274 | .TP |
5e05541a TT |
275 | .BI \-g " blocks-per-group" |
276 | Specify the number of blocks in a block group. There is generally no | |
98794d0e | 277 | reason for the user to ever set this parameter, as the default is optimal |
5e05541a TT |
278 | for the filesystem. (For administrators who are creating |
279 | filesystems on RAID arrays, it is preferable to use the | |
280 | .I stride | |
281 | RAID parameter as part of the | |
e28a1bca | 282 | .B \-E |
98794d0e | 283 | option rather than manipulating the number of blocks per group.) |
5e05541a | 284 | This option is generally used by developers who |
98794d0e | 285 | are developing test cases. |
5e05541a | 286 | .TP |
9ba40002 | 287 | .BI \-G " number-of-groups" |
98794d0e | 288 | Specify the number of block groups that will be packed together to |
7a9f055f TT |
289 | create a larger virtual block group (or "flex_bg group") in an |
290 | ext4 filesystem. This improves meta-data locality and performance | |
291 | on meta-data heavy workloads. The number of groups must be a power | |
292 | of 2 and may only be specified if the | |
293 | .B flex_bg | |
294 | filesystem feature is enabled. | |
9ba40002 | 295 | .TP |
caf8ce4c | 296 | .BI \-i " bytes-per-inode" |
98794d0e | 297 | Specify the bytes/inode ratio. |
3839e657 TT |
298 | .B mke2fs |
299 | creates an inode for every | |
300 | .I bytes-per-inode | |
98794d0e | 301 | bytes of space on the disk. The larger the |
caf8ce4c | 302 | .I bytes-per-inode |
48015ced | 303 | ratio, the fewer inodes will be created. This value generally shouldn't |
98794d0e BS |
304 | be smaller than the blocksize of the filesystem, since in that case more |
305 | inodes would be made than can ever be used. Be warned that it is not | |
306 | possible to expand the number | |
48015ced | 307 | of inodes on a filesystem after it is created, so be careful deciding the |
98794d0e | 308 | correct value for this parameter. |
067911ae AD |
309 | .TP |
310 | .BI \-I " inode-size" | |
98794d0e | 311 | Specify the size of each inode in bytes. |
067911ae | 312 | .B mke2fs |
e67670c3 TT |
313 | creates 256-byte inodes by default. In kernels after 2.6.10 and some |
314 | earlier vendor kernels it is possible to utilize inodes larger than | |
98794d0e BS |
315 | 128 bytes to store |
316 | extended attributes for improved performance. The | |
067911ae | 317 | .I inode-size |
98794d0e | 318 | value must be a power of 2 larger or equal to 128. The larger the |
067911ae AD |
319 | .I inode-size |
320 | the more space the inode table will consume, and this reduces the usable | |
98794d0e | 321 | space in the filesystem and can also negatively impact performance. |
e67670c3 | 322 | Extended attributes |
067911ae AD |
323 | stored in large inodes are not visible with older kernels, and such |
324 | filesystems will not be mountable with 2.4 kernels at all. It is not | |
325 | possible to change this value after the filesystem is created. | |
98794d0e | 326 | .TP |
48015ced TT |
327 | .B \-j |
328 | Create the filesystem with an ext3 journal. If the | |
dc2ec525 | 329 | .B \-J |
48015ced | 330 | option is not specified, the default journal parameters will be used to |
98794d0e | 331 | create an appropriately sized journal (given the size of the filesystem) |
48015ced TT |
332 | stored within the filesystem. Note that you must be using a kernel |
333 | which has ext3 support in order to actually make use of the journal. | |
dc2ec525 | 334 | .TP |
48015ced | 335 | .BI \-J " journal-options" |
dc2ec525 | 336 | Create the ext3 journal using options specified on the command-line. |
8ddaa66b TT |
337 | Journal options are comma |
338 | separated, and may take an argument using the equals ('=') sign. | |
48015ced TT |
339 | The following journal options are supported: |
340 | .RS 1.2i | |
dc2ec525 | 341 | .TP |
48015ced | 342 | .BI size= journal-size |
f0865ce4 | 343 | Create an internal journal (i.e., stored inside the filesystem) of size |
98794d0e | 344 | .I journal-size |
8d641749 | 345 | megabytes. |
98794d0e BS |
346 | The size of the journal must be at least 1024 filesystem blocks |
347 | (i.e., 1MB if using 1k blocks, 4MB if using 4k blocks, etc.) | |
57cb2716 SP |
348 | and may be no more than 10,240,000 filesystem blocks or half the total |
349 | file system size (whichever is smaller) | |
48015ced TT |
350 | @JDEV@.TP |
351 | @JDEV@.BI device= external-journal | |
8d641749 TT |
352 | @JDEV@Attach the filesystem to the journal block device located on |
353 | @JDEV@.IR external-journal . | |
354 | @JDEV@The external | |
355 | @JDEV@journal must already have been created using the command | |
356 | @JDEV@.IP | |
2d15576d AD |
357 | @JDEV@.B mke2fs -O journal_dev |
358 | @JDEV@.I external-journal | |
8d641749 TT |
359 | @JDEV@.IP |
360 | @JDEV@Note that | |
361 | @JDEV@.I external-journal | |
362 | @JDEV@must have been created with the | |
363 | @JDEV@same block size as the new filesystem. | |
3024d887 TT |
364 | @JDEV@In addition, while there is support for attaching |
365 | @JDEV@multiple filesystems to a single external journal, | |
98794d0e | 366 | @JDEV@the Linux kernel and |
3024d887 TT |
367 | @JDEV@.BR e2fsck (8) |
368 | @JDEV@do not currently support shared external journals yet. | |
2d15576d AD |
369 | @JDEV@.IP |
370 | @JDEV@Instead of specifying a device name directly, | |
371 | @JDEV@.I external-journal | |
372 | @JDEV@can also be specified by either | |
373 | @JDEV@.BI LABEL= label | |
374 | @JDEV@or | |
375 | @JDEV@.BI UUID= UUID | |
376 | @JDEV@to locate the external journal by either the volume label or UUID | |
377 | @JDEV@stored in the ext2 superblock at the start of the journal. Use | |
378 | @JDEV@.BR dumpe2fs (8) | |
379 | @JDEV@to display a journal device's volume label and UUID. See also the | |
380 | @JDEV@.B -L | |
381 | @JDEV@option of | |
382 | @JDEV@.BR tune2fs (8). | |
8d641749 TT |
383 | .RE |
384 | @JDEV@.IP | |
48015ced TT |
385 | @JDEV@Only one of the |
386 | @JDEV@.BR size " or " device | |
387 | @JDEV@options can be given for a filesystem. | |
48015ced TT |
388 | .TP |
389 | .BI \-l " filename" | |
390 | Read the bad blocks list from | |
98794d0e | 391 | .IR filename . |
3ed57c27 | 392 | Note that the block numbers in the bad block list must be generated |
98794d0e BS |
393 | using the same block size as used by |
394 | .BR mke2fs . | |
395 | As a result, the | |
3ed57c27 | 396 | .B \-c |
98794d0e | 397 | option to |
3ed57c27 TT |
398 | .B mke2fs |
399 | is a much simpler and less error-prone method of checking a disk for bad | |
98794d0e | 400 | blocks before formatting it, as |
3ed57c27 TT |
401 | .B mke2fs |
402 | will automatically pass the correct parameters to the | |
403 | .B badblocks | |
404 | program. | |
48015ced | 405 | .TP |
6a7075df TT |
406 | .BI \-L " new-volume-label" |
407 | Set the volume label for the filesystem to | |
408 | .IR new-volume-label . | |
409 | The maximum length of the | |
410 | volume label is 16 bytes. | |
48015ced TT |
411 | .TP |
412 | .BI \-m " reserved-blocks-percentage" | |
98794d0e | 413 | Specify the percentage of the filesystem blocks reserved for |
029de632 | 414 | the super-user. This avoids fragmentation, and allows root-owned |
98794d0e | 415 | daemons, such as |
029de632 | 416 | .BR syslogd (8), |
98794d0e BS |
417 | to continue to function correctly after non-privileged processes are |
418 | prevented from writing to the filesystem. The default percentage | |
029de632 | 419 | is 5%. |
dc2ec525 | 420 | .TP |
98794d0e BS |
421 | .BI \-M " last-mounted-directory" |
422 | Set the last mounted directory for the filesystem. This might be useful | |
423 | for the sake of utilities that key off of the last mounted directory to | |
bcf5aea2 | 424 | determine where the filesystem should be mounted. |
85ef4ae8 | 425 | .TP |
caf8ce4c | 426 | .B \-n |
98794d0e BS |
427 | Causes |
428 | .B mke2fs | |
429 | to not actually create a filesystem, but display what it | |
1f22ce34 TT |
430 | would do if it were to create a filesystem. This can be used to |
431 | determine the location of the backup superblocks for a particular | |
98794d0e BS |
432 | filesystem, so long as the |
433 | .B mke2fs | |
434 | parameters that were passed when the | |
1f22ce34 | 435 | filesystem was originally created are used again. (With the |
98794d0e | 436 | .B \-n |
1f22ce34 | 437 | option added, of course!) |
2740156b | 438 | .TP |
caf8ce4c | 439 | .BI \-N " number-of-inodes" |
98794d0e BS |
440 | Overrides the default calculation of the number of inodes that should be |
441 | reserved for the filesystem (which is based on the number of blocks and | |
442 | the | |
caf8ce4c | 443 | .I bytes-per-inode |
98794d0e | 444 | ratio). This allows the user to specify the number |
5515e6b4 TT |
445 | of desired inodes directly. |
446 | .TP | |
48015ced | 447 | .BI \-o " creator-os" |
98794d0e BS |
448 | Overrides the default value of the "creator operating system" field of the |
449 | filesystem. The creator field is set by default to the name of the OS the | |
583ccdc3 | 450 | .B mke2fs |
98794d0e | 451 | executable was compiled for. |
1e3472c5 | 452 | .TP |
8d641749 | 453 | .B "\-O \fIfeature\fR[,...]" |
98794d0e BS |
454 | Create a filesystem with the given features (filesystem options), |
455 | overriding the default filesystem options. The features that are | |
9dc6ad1e TT |
456 | enabled by default are specified by the |
457 | .I base_features | |
458 | relation, either in the | |
98794d0e | 459 | .I [defaults] |
9dc6ad1e TT |
460 | section in the |
461 | .B /etc/mke2fs.conf | |
3d43836f | 462 | configuration file, |
98794d0e | 463 | or in the |
9dc6ad1e | 464 | .I [fs_types] |
98794d0e | 465 | subsections for the usage types as specified by the |
a26ba650 | 466 | .B \-T |
3d43836f TT |
467 | option, further modified by the |
468 | .I features | |
469 | relation found in the | |
98794d0e BS |
470 | .I [fs_types] |
471 | subsections for the filesystem and usage types. See the | |
3d43836f TT |
472 | .BR mke2fs.conf (5) |
473 | manual page for more details. | |
474 | The filesystem type-specific configuration setting found in the | |
9dc6ad1e TT |
475 | .I [fs_types] |
476 | section will override the global default found in | |
98794d0e | 477 | .IR [defaults] . |
48015ced | 478 | .sp |
98794d0e BS |
479 | The filesystem feature set will be further edited |
480 | using either the feature set specified by this option, | |
481 | or if this option is not given, by the | |
9dc6ad1e | 482 | .I default_features |
98794d0e BS |
483 | relation for the filesystem type being created, or in the |
484 | .I [defaults] | |
9dc6ad1e TT |
485 | section of the configuration file. |
486 | .sp | |
487 | The filesystem feature set is comprised of a list of features, separated | |
488 | by commas, that are to be enabled. To disable a feature, simply | |
98794d0e | 489 | prefix the feature name with a caret ('^') character. The |
9dc6ad1e | 490 | pseudo-filesystem feature "none" will clear all filesystem features. |
48015ced | 491 | .RS 1.2i |
7f88b043 | 492 | .TP |
ccbed85a TT |
493 | .B dir_index |
494 | Use hashed b-trees to speed up lookups in large directories. | |
f3db3566 | 495 | .TP |
7a9f055f TT |
496 | .B extent |
497 | Instead of using the indirect block scheme for storing the location of | |
498 | data blocks in an inode, use extents instead. This is a much more | |
499 | efficient encoding which speeds up filesystem access, especially for | |
500 | large files. | |
501 | .TP | |
48015ced TT |
502 | .B filetype |
503 | Store file type information in directory entries. | |
1e3472c5 | 504 | .TP |
9ba40002 | 505 | .B flex_bg |
7a9f055f TT |
506 | Allow the per-block group metadata (allocation bitmaps and inode tables) |
507 | to be placed anywhere on the storage media. In addition, | |
508 | .B mke2fs | |
509 | will place the per-block group metadata together starting at the first | |
510 | block group of each "flex_bg group". The size of the flex_bg group | |
511 | can be specified using the | |
512 | .B \-G | |
513 | option. | |
9ba40002 | 514 | .TP |
48015ced TT |
515 | .B has_journal |
516 | Create an ext3 journal (as if using the | |
517 | .B \-j | |
518 | option). | |
519 | @JDEV@.TP | |
8d641749 | 520 | @JDEV@.B journal_dev |
48015ced | 521 | @JDEV@Create an external ext3 journal on the given device |
8d641749 TT |
522 | @JDEV@instead of a regular ext2 filesystem. |
523 | @JDEV@Note that | |
524 | @JDEV@.I external-journal | |
525 | @JDEV@must be created with the same | |
526 | @JDEV@block size as the filesystems that will be using it. | |
ccbed85a | 527 | .TP |
7a9f055f TT |
528 | .B large_file |
529 | Filesystem can contain files that are greater than 2GB. (Modern kernels | |
530 | set this feature automatically when a file > 2GB is created.) | |
4237c73b | 531 | .TP |
1f5d7a89 AK |
532 | .B quota |
533 | Create quota inodes (inode# 3 for userquota and inode# 4 for group quota) and | |
534 | set them in the superblock. With this feature, the quotas will be enabled | |
535 | automatically when the filesystem is mounted. | |
536 | .TP | |
59571a51 TT |
537 | .B resize_inode |
538 | Reserve space so the block group descriptor table may grow in the future. | |
98794d0e | 539 | Useful for online resizing using |
59571a51 | 540 | .BR resize2fs . |
98794d0e | 541 | By default |
59571a51 TT |
542 | .B mke2fs |
543 | will attempt to reserve enough space so that the | |
544 | filesystem may grow to 1024 times its initial size. This can be changed | |
98794d0e | 545 | using the |
59571a51 TT |
546 | .B resize |
547 | extended option. | |
548 | .TP | |
ccbed85a TT |
549 | .B sparse_super |
550 | Create a filesystem with fewer superblock backup copies | |
551 | (saves space on large filesystems). | |
7a9f055f TT |
552 | .TP |
553 | .B uninit_bg | |
554 | Create a filesystem without initializing all of the block groups. This | |
555 | feature also enables checksums and highest-inode-used statistics in each | |
556 | blockgroup. This feature can | |
557 | speed up filesystem creation time noticeably (if lazy_itable_init is | |
558 | enabled), and can also reduce | |
559 | .BR e2fsck | |
560 | time dramatically. It is only supported by the ext4 filesystem in | |
561 | recent Linux kernels. | |
48015ced | 562 | .RE |
1e3472c5 | 563 | .TP |
8d641749 | 564 | .B \-q |
98794d0e | 565 | Quiet execution. Useful if |
8d641749 TT |
566 | .B mke2fs |
567 | is run in a script. | |
568 | .TP | |
48015ced | 569 | .BI \-r " revision" |
a29f4d30 | 570 | Set the filesystem revision for the new filesystem. Note that 1.2 |
98794d0e | 571 | kernels only support revision 0 filesystems. The default is to |
48015ced | 572 | create revision 1 filesystems. |
a29f4d30 | 573 | .TP |
caf8ce4c | 574 | .B \-S |
f3db3566 TT |
575 | Write superblock and group descriptors only. This is useful if all of |
576 | the superblock and backup superblocks are corrupted, and a last-ditch | |
98794d0e | 577 | recovery method is desired. It causes |
583ccdc3 | 578 | .B mke2fs |
98794d0e | 579 | to reinitialize the |
f3db3566 TT |
580 | superblock and group descriptors, while not touching the inode table |
581 | and the block and inode bitmaps. The | |
582 | .B e2fsck | |
583 | program should be run immediately after this option is used, and there | |
48015ced TT |
584 | is no guarantee that any data will be salvageable. It is critical to |
585 | specify the correct filesystem blocksize when using this option, | |
586 | or there is no chance of recovery. | |
8d641749 TT |
587 | .\" .TP |
588 | .\" .BI \-t " test" | |
589 | .\" Check the device for bad blocks before creating the file system | |
590 | .\" using the specified test. | |
818180cd | 591 | .TP |
3d43836f | 592 | .BI \-t " fs-type" |
08c8b1ab | 593 | Specify the filesystem type (i.e., ext2, ext3, ext4, etc.) that is to be created. |
98794d0e BS |
594 | If this option is not specified, |
595 | .B mke2fs | |
596 | will pick a default either via how | |
597 | the command was run (for example, using a name of the form mkfs.ext2, | |
3d43836f TT |
598 | mkfs.ext3, etc.) or via a default as defined by the |
599 | .BR /etc/mke2fs.conf (5) | |
08c8b1ab TT |
600 | file. This option controls which filesystem options are used by |
601 | default, based on the | |
602 | .B fstypes | |
603 | configuration stanza in | |
604 | .BR /etc/mke2fs.conf (5). | |
605 | .sp | |
606 | If the | |
607 | .B \-O | |
608 | option is used to explicitly add or remove filesystem options that | |
609 | should be set in the newly created filesystem, the | |
610 | resulting filesystem may not be supported by the requested | |
611 | .IR fs-type . | |
b7150807 | 612 | (e.g., "\fBmke2fs \-t ext3 \-O extent /dev/sdXX\fR" will create a |
08c8b1ab | 613 | filesystem that is not supported by the ext3 implementation as found in |
93aa0246 | 614 | the Linux kernel; and "\fBmke2fs \-t ext3 \-O ^has_journal /dev/hdXX\fR" |
08c8b1ab TT |
615 | will create a filesystem that does not have a journal and hence will not |
616 | be supported by the ext3 filesystem code in the Linux kernel.) | |
3d43836f TT |
617 | .TP |
618 | .BI \-T " usage-type[,...]" | |
98794d0e BS |
619 | Specify how the filesystem is going to be used, so that |
620 | .B mke2fs | |
3d43836f TT |
621 | can choose optimal filesystem parameters for that use. The usage |
622 | types that are supported are defined in the configuration file | |
364f9410 | 623 | .BR /etc/mke2fs.conf (5). |
3d43836f TT |
624 | The user may specify one or more usage types |
625 | using a comma separated list. | |
626 | .sp | |
627 | If this option is is not specified, | |
628 | .B mke2fs | |
629 | will pick a single default usage type based on the size of the filesystem to | |
630 | be created. If the filesystem size is less than or equal to 3 megabytes, | |
a4396e9d | 631 | .B mke2fs |
3d43836f TT |
632 | will use the filesystem type |
633 | .IR floppy . | |
634 | If the filesystem size is greater than 3 but less than or equal to | |
635 | 512 megabytes, | |
636 | .BR mke2fs (8) | |
9a2767ff | 637 | will use the filesystem type |
3d43836f | 638 | .IR small . |
9a2767ff NK |
639 | If the filesystem size is greater than or equal to 4 terabytes but less than |
640 | 16 terabytes, | |
641 | .BR mke2fs (8) | |
642 | will use the filesystem type | |
643 | .IR big . | |
644 | If the filesystem size is greater than or equal to 16 terabytes, | |
645 | .BR mke2fs (8) | |
646 | will use the filesystem type | |
647 | .IR huge . | |
3d43836f TT |
648 | Otherwise, |
649 | .BR mke2fs (8) | |
650 | will use the default filesystem type | |
651 | .IR default . | |
48015ced | 652 | .TP |
b0afdda1 TT |
653 | .BI \-U " UUID" |
654 | Create the filesystem with the specified UUID. | |
655 | .TP | |
48015ced TT |
656 | .B \-v |
657 | Verbose execution. | |
50787ea2 | 658 | .TP |
caf8ce4c | 659 | .B \-V |
98794d0e | 660 | Print the version number of |
818180cd TT |
661 | .B mke2fs |
662 | and exit. | |
5182ad4c NK |
663 | .SH ENVIRONMENT |
664 | .TP | |
665 | .BI MKE2FS_SYNC | |
666 | If set to non-zero integer value, its value is used to determine how often | |
667 | .BR sync (2) | |
668 | is called during inode table initialization. | |
669 | .TP | |
670 | .BI MKE2FS_CONFIG | |
671 | Determines the location of the configuration file (see | |
672 | .BR mke2fs.conf (5)). | |
673 | .TP | |
674 | .BI MKE2FS_FIRST_META_BG | |
675 | If set to non-zero integer value, its value is used to determine first meta | |
676 | block group. This is mostly for debugging purposes. | |
677 | .TP | |
678 | .BI MKE2FS_DEVICE_SECTSIZE | |
679 | If set to non-zero integer value, its value is used to determine physical | |
680 | sector size of the | |
681 | .IR device . | |
682 | .TP | |
683 | .BI MKE2FS_SKIP_CHECK_MSG | |
684 | If set, do not show the message of filesystem automatic check caused by | |
685 | mount count or check interval. | |
3839e657 TT |
686 | .SH AUTHOR |
687 | This version of | |
688 | .B mke2fs | |
a418d3ad | 689 | has been written by Theodore Ts'o <tytso@mit.edu>. |
3839e657 TT |
690 | .SH BUGS |
691 | .B mke2fs | |
caf8ce4c TT |
692 | accepts the |
693 | .B \-f | |
694 | option but currently ignores it because the second | |
3839e657 TT |
695 | extended file system does not support fragments yet. |
696 | .br | |
48015ced | 697 | There may be other ones. Please, report them to the author. |
3839e657 TT |
698 | .SH AVAILABILITY |
699 | .B mke2fs | |
98794d0e | 700 | is part of the e2fsprogs package and is available from |
348e43dc | 701 | http://e2fsprogs.sourceforge.net. |
3839e657 | 702 | .SH SEE ALSO |
9dc6ad1e | 703 | .BR mke2fs.conf (5), |
e72a9ba3 | 704 | .BR badblocks (8), |
3839e657 TT |
705 | .BR dumpe2fs (8), |
706 | .BR e2fsck (8), | |
707 | .BR tune2fs (8) |