]>
Commit | Line | Data |
---|---|---|
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 DEBUGFS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" | |
6 | .SH NAME | |
7 | debugfs \- ext2/ext3/ext4 file system debugger | |
8 | .SH SYNOPSIS | |
9 | .B debugfs | |
10 | [ | |
11 | .B \-DVwci | |
12 | ] | |
13 | [ | |
14 | .B \-b | |
15 | blocksize | |
16 | ] | |
17 | [ | |
18 | .B \-s | |
19 | superblock | |
20 | ] | |
21 | [ | |
22 | .B \-f | |
23 | cmd_file | |
24 | ] | |
25 | [ | |
26 | .B \-R | |
27 | request | |
28 | ] | |
29 | [ | |
30 | .B \-d | |
31 | data_source_device | |
32 | ] | |
33 | [ | |
34 | device | |
35 | ] | |
36 | .SH DESCRIPTION | |
37 | The | |
38 | .B debugfs | |
39 | program is an interactive file system debugger. It can be used to | |
40 | examine and change the state of an ext2, ext3, or ext4 file system. | |
41 | .br | |
42 | .I device | |
43 | is the special file corresponding to the device containing the | |
44 | file system (e.g /dev/hdXX). | |
45 | .SH OPTIONS | |
46 | .TP | |
47 | .I \-w | |
48 | Specifies that the file system should be opened in read-write mode. | |
49 | Without this option, the file system is opened in read-only mode. | |
50 | .TP | |
51 | .I \-c | |
52 | Specifies that the file system should be opened in catastrophic mode, in | |
53 | which the inode and group bitmaps are not read initially. This can be | |
54 | useful for filesystems with significant corruption, but because of this, | |
55 | catastrophic mode forces the filesystem to be opened read-only. | |
56 | .TP | |
57 | .I \-i | |
58 | Specifies that | |
59 | .I device | |
60 | represents an ext2 image file created by the | |
61 | .B e2image | |
62 | program. Since the ext2 image file only contains the superblock, block | |
63 | group descriptor, block and inode allocation bitmaps, and | |
64 | the inode table, many | |
65 | .B debugfs | |
66 | commands will not function properly. | |
67 | .B Warning: | |
68 | no safety checks are in place, and | |
69 | .B debugfs | |
70 | may fail in interesting ways if commands such as | |
71 | .IR ls ", " dump ", " | |
72 | etc. are tried without specifying the | |
73 | .I data_source_device | |
74 | using the | |
75 | .I \-d | |
76 | option. | |
77 | .B debugfs | |
78 | is a debugging tool. It has rough edges! | |
79 | .TP | |
80 | .I -d data_source_device | |
81 | Used with the | |
82 | .I \-i | |
83 | option, specifies that | |
84 | .I data_source_device | |
85 | should be used when reading blocks not found in the ext2 image file. | |
86 | This includes data, directory, and indirect blocks. | |
87 | .TP | |
88 | .I -b blocksize | |
89 | Forces the use of the given block size for the file system, rather than | |
90 | detecting the correct block size as normal. | |
91 | .TP | |
92 | .I -s superblock | |
93 | Causes the file system superblock to be read from the given block | |
94 | number, instead of using the primary superblock (located at an offset of | |
95 | 1024 bytes from the beginning of the filesystem). If you specify the | |
96 | .I -s | |
97 | option, you must also provide the blocksize of the filesystem via the | |
98 | .I -b | |
99 | option. | |
100 | .TP | |
101 | .I -f cmd_file | |
102 | Causes | |
103 | .B debugfs | |
104 | to read in commands from | |
105 | .IR cmd_file , | |
106 | and execute them. When | |
107 | .B debugfs | |
108 | is finished executing those commands, it will exit. | |
109 | .TP | |
110 | .I -D | |
111 | Causes | |
112 | .B debugfs | |
113 | to open the device using Direct I/O, bypassing the buffer cache. Note | |
114 | that some Linux devices, notably device mapper as of this writing, do | |
115 | not support Direct I/O. | |
116 | .TP | |
117 | .I -R request | |
118 | Causes | |
119 | .B debugfs | |
120 | to execute the single command | |
121 | .IR request , | |
122 | and then exit. | |
123 | .TP | |
124 | .I -V | |
125 | print the version number of | |
126 | .B debugfs | |
127 | and exit. | |
128 | .SH SPECIFYING FILES | |
129 | Many | |
130 | .B debugfs | |
131 | commands take a | |
132 | .I filespec | |
133 | as an argument to specify an inode (as opposed to a pathname) | |
134 | in the filesystem which is currently opened by | |
135 | .BR debugfs . | |
136 | The | |
137 | .I filespec | |
138 | argument may be specified in two forms. The first form is an inode | |
139 | number surrounded by angle brackets, e.g., | |
140 | .IR <2> . | |
141 | The second form is a pathname; if the pathname is prefixed by a forward slash | |
142 | ('/'), then it is interpreted relative to the root of the filesystem | |
143 | which is currently opened by | |
144 | .BR debugfs . | |
145 | If not, the pathname is | |
146 | interpreted relative to the current working directory as maintained by | |
147 | .BR debugfs . | |
148 | This may be modified by using the | |
149 | .B debugfs | |
150 | command | |
151 | .IR cd . | |
152 | .\" | |
153 | .\" | |
154 | .\" | |
155 | .SH COMMANDS | |
156 | This is a list of the commands which | |
157 | .B debugfs | |
158 | supports. | |
159 | .TP | |
160 | .BI blocks " filespace" | |
161 | Print the blocks used by the inode | |
162 | .I filespec | |
163 | to stdout. | |
164 | .TP | |
165 | .BI bmap " filespec logical_block" | |
166 | Print the physical block number corresponding to the logical block number | |
167 | .I logical_block | |
168 | in the inode | |
169 | .IR filespec . | |
170 | .TP | |
171 | .BI block_dump " [-f filespec] block_num" | |
172 | Dump the filesystem block given by | |
173 | .I block_num | |
174 | in hex and ASCII format to the console. If the | |
175 | .I -f | |
176 | option is specified, the block number is relative to the start of the given | |
177 | .BR filespec . | |
178 | .TP | |
179 | .BI cat " filespec" | |
180 | Dump the contents of the inode | |
181 | .I filespec | |
182 | to stdout. | |
183 | .TP | |
184 | .BI cd " filespec" | |
185 | Change the current working directory to | |
186 | .IR filespec . | |
187 | .TP | |
188 | .BI chroot " filespec" | |
189 | Change the root directory to be the directory | |
190 | .IR filespec . | |
191 | .TP | |
192 | .BI close " [-a]" | |
193 | Close the currently open file system. If the | |
194 | .I -a | |
195 | option is specified, write out any changes to the superblock and block | |
196 | group descriptors to all of the backup superblocks, not just to the | |
197 | master superblock. | |
198 | .TP | |
199 | .BI clri " filespec" | |
200 | Clear the contents of the inode | |
201 | .IR filespec . | |
202 | .TP | |
203 | .BI dirsearch " filespec filename" | |
204 | Search the directory | |
205 | .I filespec | |
206 | for | |
207 | .IR filename . | |
208 | .TP | |
209 | .B dirty | |
210 | Mark the filesystem as dirty, so that the superblocks will be written on exit. | |
211 | .TP | |
212 | .BI dump " [-p] filespec out_file" | |
213 | Dump the contents of the inode | |
214 | .I filespec | |
215 | to the output file | |
216 | .IR out_file . | |
217 | If the | |
218 | .I -p | |
219 | option is given set the owner, group and permissions information on | |
220 | .I out_file | |
221 | to match | |
222 | .IR filespec . | |
223 | .TP | |
224 | .B dump_mmp | |
225 | Display the multiple-mount protection (mmp) field values. | |
226 | .TP | |
227 | .BI dx_hash " [-h hash_alg] [-s hash_seed] filename" | |
228 | Calculate the directory hash of | |
229 | .IR filename . | |
230 | The hash algorithm specified with | |
231 | .I -h | |
232 | may be | |
233 | .BR legacy , " half_md4" ", or " tea . | |
234 | The hash seed specified with | |
235 | .I -s | |
236 | must be in UUID format. | |
237 | .TP | |
238 | .BI dump_extents " [-n] [-l] filespec" | |
239 | Dump the the extent tree of the inode | |
240 | .IR filespec . | |
241 | The | |
242 | .I -n | |
243 | flag will cause | |
244 | .B dump_extents | |
245 | to only display the interior nodes in the extent tree. The | |
246 | .I -l | |
247 | flag will cause | |
248 | .B dump_extents | |
249 | to only display the leaf nodes in the extent tree. | |
250 | .IP | |
251 | (Please note that the length and range of blocks for the last extent in | |
252 | an interior node is an estimate by the extents library functions, and is | |
253 | not stored in filesystem data structures. Hence, the values displayed | |
254 | may not necessarily by accurate and does not indicate a problem or | |
255 | corruption in the file system.) | |
256 | .TP | |
257 | .BI expand_dir " filespec" | |
258 | Expand the directory | |
259 | .IR filespec . | |
260 | .TP | |
261 | .BI feature " [fs_feature] [-fs_feature] ..." | |
262 | Set or clear various filesystem features in the superblock. After setting | |
263 | or clearing any filesystem features that were requested, print the current | |
264 | state of the filesystem feature set. | |
265 | .TP | |
266 | .BI filefrag " [-dvr] filespec" | |
267 | Print the number of contiguous extents in | |
268 | .IR filespec . | |
269 | If | |
270 | .I filespec | |
271 | is a directory and the | |
272 | .I -d | |
273 | option is not specified, | |
274 | .I filefrag | |
275 | will print the number of contiguous extents for each file in | |
276 | the directory. The | |
277 | .I -v | |
278 | option will cause | |
279 | .I filefrag | |
280 | print a tabular listing of the contiguous extents in the | |
281 | file. The | |
282 | .I -r | |
283 | option will cause | |
284 | .I filefrag | |
285 | to do a recursive listing of the directory. | |
286 | .TP | |
287 | .BI find_free_block " [count [goal]]" | |
288 | Find the first | |
289 | .I count | |
290 | free blocks, starting from | |
291 | .I goal | |
292 | and allocate it. Also available as | |
293 | .BR ffb . | |
294 | .TP | |
295 | .BI find_free_inode " [dir [mode]]" | |
296 | Find a free inode and allocate it. If present, | |
297 | .I dir | |
298 | specifies the inode number of the directory | |
299 | which the inode is to be located. The second | |
300 | optional argument | |
301 | .I mode | |
302 | specifies the permissions of the new inode. (If the directory bit is set | |
303 | on the mode, the allocation routine will function differently.) Also | |
304 | available as | |
305 | .BR ffi . | |
306 | .TP | |
307 | .BI freeb " block [count]" | |
308 | Mark the block number | |
309 | .I block | |
310 | as not allocated. | |
311 | If the optional argument | |
312 | .I count | |
313 | is present, then | |
314 | .I count | |
315 | blocks starting at block number | |
316 | .I block | |
317 | will be marked as not allocated. | |
318 | .TP | |
319 | .BI freefrag " [-c chunk_kb]" | |
320 | Report free space fragmentation on the currently open file system. | |
321 | If the | |
322 | .I \-c | |
323 | option is specified then the filefrag command will print how many free | |
324 | chunks of size | |
325 | .I chunk_kb | |
326 | can be found in the file system. The chunk size must be a power of two | |
327 | and be larger than the file system block size. | |
328 | .TP | |
329 | .BI freei " filespec [num]" | |
330 | Free the inode specified by | |
331 | .IR filespec . | |
332 | If | |
333 | .I num | |
334 | is specified, also clear num-1 inodes after the specified inode. | |
335 | .TP | |
336 | .B help | |
337 | Print a list of commands understood by | |
338 | .BR debugfs . | |
339 | .TP | |
340 | .BI htree_dump " filespec" | |
341 | Dump the hash-indexed directory | |
342 | .IR filespec , | |
343 | showing its tree structure. | |
344 | .TP | |
345 | .BI icheck " block ..." | |
346 | Print a listing of the inodes which use the one or more blocks specified | |
347 | on the command line. | |
348 | .TP | |
349 | .BI imap " filespec" | |
350 | Print the location of the inode data structure (in the inode table) | |
351 | of the inode | |
352 | .IR filespec . | |
353 | .TP | |
354 | .BI init_filesys " device blocksize" | |
355 | Create an ext2 file system on | |
356 | .I device | |
357 | with device size | |
358 | .IR blocksize . | |
359 | Note that this does not fully initialize all of the data structures; | |
360 | to do this, use the | |
361 | .BR mke2fs (8) | |
362 | program. This is just a call to the low-level library, which sets up | |
363 | the superblock and block descriptors. | |
364 | .TP | |
365 | .BI kill_file " filespec" | |
366 | Deallocate the inode | |
367 | .I filespec | |
368 | and its blocks. Note that this does not remove any directory | |
369 | entries (if any) to this inode. See the | |
370 | .BR rm (1) | |
371 | command if you wish to unlink a file. | |
372 | .TP | |
373 | .BI lcd " directory" | |
374 | Change the current working directory of the | |
375 | .B debugfs | |
376 | process to | |
377 | .I directory | |
378 | on the native filesystem. | |
379 | .TP | |
380 | .BI ln " filespec dest_file" | |
381 | Create a link named | |
382 | .I dest_file | |
383 | which is a hard link to | |
384 | .IR filespec . | |
385 | Note this does not adjust the inode reference counts. | |
386 | .TP | |
387 | .BI logdump " [-acs] [-b block] [-i filespec] [-f journal_file] [output_file]" | |
388 | Dump the contents of the ext3 journal. By default, dump the journal inode as | |
389 | specified in the superblock. However, this can be overridden with the | |
390 | .I \-i | |
391 | option, which dumps the journal from the internal inode given by | |
392 | .IR filespec . | |
393 | A regular file containing journal data can be specified using the | |
394 | .I \-f | |
395 | option. Finally, the | |
396 | .I \-s | |
397 | option utilizes the backup information in the superblock to locate the | |
398 | journal. | |
399 | .IP | |
400 | The | |
401 | .I \-a | |
402 | option causes the | |
403 | .B logdump | |
404 | program to print the contents of all of the descriptor blocks. | |
405 | The | |
406 | .I \-b | |
407 | option causes | |
408 | .B logdump | |
409 | to print all journal records that are refer to the specified block. | |
410 | The | |
411 | .I \-c | |
412 | option will print out the contents of all of the data blocks selected by | |
413 | the | |
414 | .I \-a | |
415 | and | |
416 | .I \-b | |
417 | options. | |
418 | .TP | |
419 | .BI ls " [-d] [-l] [-p] filespec" | |
420 | Print a listing of the files in the directory | |
421 | .IR filespec . | |
422 | The | |
423 | .I \-d | |
424 | flag will list deleted entries in the directory. | |
425 | The | |
426 | .I \-l | |
427 | flag will list files using a more verbose format. | |
428 | The | |
429 | .I \-p | |
430 | flag will list the files in a format which is more easily parsable by | |
431 | scripts, as well as making it more clear when there are spaces or other | |
432 | non-printing characters at the end of filenames. | |
433 | .TP | |
434 | .BI modify_inode " filespec" | |
435 | Modify the contents of the inode structure in the inode | |
436 | .IR filespec . | |
437 | Also available as | |
438 | .BR mi . | |
439 | .TP | |
440 | .BI mkdir " filespec" | |
441 | Make a directory. | |
442 | .TP | |
443 | .BI mknod " filespec [p|[[c|b] major minor]]" | |
444 | Create a special device file (a named pipe, character or block device). | |
445 | If a character or block device is to be made, the | |
446 | .I major | |
447 | and | |
448 | .I minor | |
449 | device numbers must be specified. | |
450 | .TP | |
451 | .BI ncheck " [-c] inode_num ..." | |
452 | Take the requested list of inode numbers, and print a listing of pathnames | |
453 | to those inodes. The | |
454 | .I -c | |
455 | flag will enable checking the file type information in the directory | |
456 | entry to make sure it matches the inode's type. | |
457 | .TP | |
458 | .BI open " [-weficD] [-b blocksize] [-s superblock] device" | |
459 | Open a filesystem for editing. The | |
460 | .I -f | |
461 | flag forces the filesystem to be opened even if there are some unknown | |
462 | or incompatible filesystem features which would normally | |
463 | prevent the filesystem from being opened. The | |
464 | .I -e | |
465 | flag causes the filesystem to be opened in exclusive mode. The | |
466 | .IR -b ", " -c ", " -i ", " -s ", " -w ", and " -D | |
467 | options behave the same as the command-line options to | |
468 | .BR debugfs . | |
469 | .TP | |
470 | .BI punch " filespec start_blk [end_blk]" | |
471 | Delete the blocks in the inode ranging from | |
472 | .I start_blk | |
473 | to | |
474 | .IR end_blk . | |
475 | If | |
476 | .I end_blk | |
477 | is omitted then this command will function as a truncate command; that | |
478 | is, all of the blocks starting at | |
479 | .I start_blk | |
480 | through to the end of the file will be deallocated. | |
481 | .TP | |
482 | .I symlink filespec target | |
483 | Make a symbolic link. | |
484 | .TP | |
485 | .B pwd | |
486 | Print the current working directory. | |
487 | .TP | |
488 | .B quit | |
489 | Quit | |
490 | .B debugfs | |
491 | .TP | |
492 | .BI rdump " directory destination" | |
493 | Recursively dump | |
494 | .I directory | |
495 | and all its contents (including regular files, symbolic links, and other | |
496 | directories) into the named | |
497 | .I destination | |
498 | which should be an existing directory on the native filesystem. | |
499 | .TP | |
500 | .BI rm " pathname" | |
501 | Unlink | |
502 | .IR pathname . | |
503 | If this causes the inode pointed to by | |
504 | .I pathname | |
505 | to have no other references, deallocate the file. This command functions | |
506 | as the unlink() system call. | |
507 | .I | |
508 | .TP | |
509 | .BI rmdir " filespec" | |
510 | Remove the directory | |
511 | .IR filespec . | |
512 | .TP | |
513 | .BI setb " block [count]" | |
514 | Mark the block number | |
515 | .I block | |
516 | as allocated. | |
517 | If the optional argument | |
518 | .I count | |
519 | is present, then | |
520 | .I count | |
521 | blocks starting at block number | |
522 | .I block | |
523 | will be marked as allocated. | |
524 | .TP | |
525 | .BI set_block_group " bgnum field value" | |
526 | Modify the block group descriptor specified by | |
527 | .I bgnum | |
528 | so that the block group descriptor field | |
529 | .I field | |
530 | has value | |
531 | .IR value . | |
532 | Also available as | |
533 | .BR set_bg . | |
534 | .TP | |
535 | .BI seti " filespec [num]" | |
536 | Mark inode | |
537 | .I filespec | |
538 | as in use in the inode bitmap. If | |
539 | .I num | |
540 | is specified, also set num-1 inodes after the specified inode. | |
541 | .TP | |
542 | .BI set_inode_field " filespec field value" | |
543 | Modify the inode specified by | |
544 | .I filespec | |
545 | so that the inode field | |
546 | .I field | |
547 | has value | |
548 | .I value. | |
549 | The list of valid inode fields which can be set via this command | |
550 | can be displayed by using the command: | |
551 | .B set_inode_field -l | |
552 | Also available as | |
553 | .BR sif . | |
554 | .TP | |
555 | .BI set_mmp_value " field value" | |
556 | Modify the multiple-mount protection (MMP) data so that the MMP field | |
557 | .I field | |
558 | has value | |
559 | .I value. | |
560 | The list of valid MMP fields which can be set via this command | |
561 | can be displayed by using the command: | |
562 | .B set_mmp_value -l | |
563 | Also available as | |
564 | .BR smmp . | |
565 | .TP | |
566 | .BI set_super_value " field value" | |
567 | Set the superblock field | |
568 | .I field | |
569 | to | |
570 | .I value. | |
571 | The list of valid superblock fields which can be set via this command | |
572 | can be displayed by using the command: | |
573 | .B set_super_value -l | |
574 | Also available as | |
575 | .BR ssv . | |
576 | .TP | |
577 | .BI show_super_stats " [-h]" | |
578 | List the contents of the super block and the block group descriptors. If the | |
579 | .I -h | |
580 | flag is given, only print out the superblock contents. Also available as | |
581 | .BR stats . | |
582 | .TP | |
583 | .BI stat " filespec" | |
584 | Display the contents of the inode structure of the inode | |
585 | .IR filespec . | |
586 | .TP | |
587 | .BI testb " block [count]" | |
588 | Test if the block number | |
589 | .I block | |
590 | is marked as allocated in the block bitmap. | |
591 | If the optional argument | |
592 | .I count | |
593 | is present, then | |
594 | .I count | |
595 | blocks starting at block number | |
596 | .I block | |
597 | will be tested. | |
598 | .TP | |
599 | .BI testi " filespec" | |
600 | Test if the inode | |
601 | .I filespec | |
602 | is marked as allocated in the inode bitmap. | |
603 | .TP | |
604 | .BI undel " <inode_number> [pathname]" | |
605 | Undelete the specified inode number (which must be surrounded by angle | |
606 | brackets) so that it and its blocks are marked in use, and optionally | |
607 | link the recovered inode to the specified pathname. The | |
608 | .B e2fsck | |
609 | command should always be run after using the | |
610 | .B undel | |
611 | command to recover deleted files. | |
612 | .IP | |
613 | Note that if you are recovering a large number of deleted files, linking | |
614 | the inode to a directory may require the directory to be expanded, which | |
615 | could allocate a block that had been used by one of the | |
616 | yet-to-be-undeleted files. So it is safer to undelete all of the | |
617 | inodes without specifying a destination pathname, and then in a separate | |
618 | pass, use the debugfs | |
619 | .B link | |
620 | command to link the inode to the destination pathname, or use | |
621 | .B e2fsck | |
622 | to check the filesystem and link all of the recovered inodes to the | |
623 | lost+found directory. | |
624 | .TP | |
625 | .BI unlink " pathname" | |
626 | Remove the link specified by | |
627 | .I pathname | |
628 | to an inode. Note this does not adjust the inode reference counts. | |
629 | .TP | |
630 | .BI write " source_file out_file" | |
631 | Copy the contents of | |
632 | .I source_file | |
633 | into a newly-created file in the filesystem named | |
634 | .IR out_file . | |
635 | .TP | |
636 | .BI zap_block " [-f filespec] [-o offset] [-l length] [-p pattern] block_num" | |
637 | .TP | |
638 | Overwrite the block specified by | |
639 | .I block_num | |
640 | with zero (NUL) bytes, or if | |
641 | .I -p | |
642 | is given use the byte specified by | |
643 | .IR pattern . | |
644 | If | |
645 | .I -f | |
646 | is given then | |
647 | .I block_num | |
648 | is relative to the start of the file given by | |
649 | .IR filespec . | |
650 | The | |
651 | .I -o | |
652 | and | |
653 | .I -l | |
654 | options limit the range of bytes to zap to the specified | |
655 | .I offset | |
656 | and | |
657 | .I length | |
658 | relative to the start of the block. | |
659 | .TP | |
660 | .BI zap_block " [-f filespec] [-b bit] block_num" | |
661 | Bit-flip portions of the physical | |
662 | .IR block_num . | |
663 | If | |
664 | .I -f | |
665 | is given, then | |
666 | .I block_num | |
667 | is a logical block relative to the start of | |
668 | .IR filespec . | |
669 | .SH ENVIRONMENT VARIABLES | |
670 | .TP | |
671 | .B DEBUGFS_PAGER, PAGER | |
672 | The | |
673 | .B debugfs | |
674 | program always pipes the output of the some commands through a | |
675 | pager program. These commands include: | |
676 | .IR show_super_stats " (" stats ), | |
677 | .IR list_directory " (" ls ), | |
678 | .IR show_inode_info " (" stat ), | |
679 | .IR list_deleted_inodes " (" lsdel ), | |
680 | and | |
681 | .IR htree_dump . | |
682 | The specific pager can explicitly specified by the | |
683 | .B DEBUGFS_PAGER | |
684 | environment variable, and if it is not set, by the | |
685 | .B PAGER | |
686 | environment variable. | |
687 | .IP | |
688 | Note that since a pager is always used, the | |
689 | .BR less (1) | |
690 | pager is not particularly appropriate, since it clears the screen before | |
691 | displaying the output of the command and clears the output the screen | |
692 | when the pager is exited. Many users prefer to use the | |
693 | .BR less (1) | |
694 | pager for most purposes, which is why the | |
695 | .B DEBUGFS_PAGER | |
696 | environment variable is available to override the more general | |
697 | .B PAGER | |
698 | environment variable. | |
699 | .SH AUTHOR | |
700 | .B debugfs | |
701 | was written by Theodore Ts'o <tytso@mit.edu>. | |
702 | .SH SEE ALSO | |
703 | .BR dumpe2fs (8), | |
704 | .BR tune2fs (8), | |
705 | .BR e2fsck (8), | |
706 | .BR mke2fs (8), | |
707 | .BR ext4 (5) |