X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=debugfs%2Fdebugfs.8.in;h=637d22b3f23467e344527134bbcbd78ae5da73c0;hb=cdc9dbf348a99b94a9f750ffdb7e6191d8ac0f39;hp=7ac455259e5de670413cf3e41b48ac2f9bf2fa43;hpb=2e8d40d562ec93d68505800a46c5b9dcc229264e;p=tools%2Fe2fsprogs.git diff --git a/debugfs/debugfs.8.in b/debugfs/debugfs.8.in index 7ac4552..637d22b 100644 --- a/debugfs/debugfs.8.in +++ b/debugfs/debugfs.8.in @@ -1,13 +1,16 @@ .\" -*- nroff -*- .\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. .\" This file may be copied under the terms of the GNU Public License. -.\" +.\" .TH DEBUGFS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME -debugfs \- ext2 file system debugger +debugfs \- ext2/ext3/ext4 file system debugger .SH SYNOPSIS .B debugfs [ +.B \-DVwcin +] +[ .B \-b blocksize ] @@ -16,7 +19,7 @@ blocksize superblock ] [ -.B \-f +.B \-f cmd_file ] [ @@ -24,316 +27,845 @@ cmd_file request ] [ -.B \-V -] -[ -[ -.B \-w +.B \-d +data_source_device ] [ -.B \-c +.B \-z +.I undo_file ] [ device ] -] .SH DESCRIPTION -The -.B debugfs -program -is a file system debugger. It can be used to examine and change the -state of an ext2 file system. -.br +The +.B debugfs +program is an interactive file system debugger. It can be used to +examine and change the state of an ext2, ext3, or ext4 file system. +.PP .I device -is the special file corresponding to the device containing the ext2 -file system (e.g /dev/hdXX). +is a block device (e.g., /dev/sdXX) or a file containing the file system. .SH OPTIONS .TP -.I -w +.I \-w Specifies that the file system should be opened in read-write mode. Without this option, the file system is opened in read-only mode. .TP -.I -c +.I \-n +Disables metadata checksum verification. This should only be used if +you believe the metadata to be correct despite the complaints of +e2fsprogs. +.TP +.I \-c Specifies that the file system should be opened in catastrophic mode, in which the inode and group bitmaps are not read initially. This can be -useful for filesystems with significant corruption, but because of this, -catastrophic mode forces the filesystem to be opened read-only. +useful for file systems with significant corruption, but because of this, +catastrophic mode forces the file system to be opened read-only. +.TP +.I \-i +Specifies that +.I device +represents an ext2 image file created by the +.B e2image +program. Since the ext2 image file only contains the superblock, block +group descriptor, block and inode allocation bitmaps, and +the inode table, many +.B debugfs +commands will not function properly. +.B Warning: +no safety checks are in place, and +.B debugfs +may fail in interesting ways if commands such as +.IR ls ", " dump ", " +etc. are tried without specifying the +.I data_source_device +using the +.I \-d +option. +.B debugfs +is a debugging tool. It has rough edges! +.TP +.I -d data_source_device +Used with the +.I \-i +option, specifies that +.I data_source_device +should be used when reading blocks not found in the ext2 image file. +This includes data, directory, and indirect blocks. .TP .I -b blocksize -Forces the use of the given block size for the file system, rather than -detecting the correct block size as normal. +Forces the use of the given block size (in bytes) for the file system, +rather than detecting the correct block size automatically. (This +option is rarely needed; it is used primarily when the file system is +extremely badly damaged/corrupted.) .TP .I -s superblock -Causes the file system superblock to be read from the given block number, -rather than the default (1). If you give a +Causes the file system superblock to be read from the given block +number, instead of using the primary superblock (located at an offset of +1024 bytes from the beginning of the file system). If you specify the .I -s -option, you must also give a +option, you must also provide the blocksize of the file system via the .I -b -option. +option. (This +option is rarely needed; it is used primarily when the file system is +extremely badly damaged/corrupted.) .TP .I -f cmd_file -Causes +Causes .B debugfs -to read in commands from -.IR cmd_file , -and execute them. When +to read in commands from +.IR cmd_file , +and execute them. When .B debugfs is finished executing those commands, it will exit. -.TP +.TP +.I -D +Causes +.B debugfs +to open the device using Direct I/O, bypassing the buffer cache. Note +that some Linux devices, notably device mapper as of this writing, do +not support Direct I/O. +.TP .I -R request -Causes +Causes .B debugfs -to execute the single command +to execute the single command .IR request , and then exit. .TP .I -V -print the version number of +print the version number of .B debugfs and exit. +.TP +.BI \-z " undo_file" +Before overwriting a file system block, write the old contents of the block to +an undo file. This undo file can be used with e2undo(8) to restore the old +contents of the file system should something go wrong. If the empty string is +passed as the undo_file argument, the undo file will be written to a file named +debugfs-\fIdevice\fR.e2undo in the directory specified via the +\fIE2FSPROGS_UNDO_DIR\fR environment variable. + +WARNING: The undo file cannot be used to recover from a power or system crash. +.SH SPECIFYING FILES +Many +.B debugfs +commands take a +.I filespec +as an argument to specify an inode (as opposed to a pathname) +in the file system which is currently opened by +.BR debugfs . +The +.I filespec +argument may be specified in two forms. The first form is an inode +number surrounded by angle brackets, e.g., +.IR <2> . +The second form is a pathname; if the pathname is prefixed by a forward slash +('/'), then it is interpreted relative to the root of the file system +which is currently opened by +.BR debugfs . +If not, the pathname is +interpreted relative to the current working directory as maintained by +.BR debugfs . +This may be modified by using the +.B debugfs +command +.IR cd . +.\" +.\" +.\" .SH COMMANDS +This is a list of the commands which .B debugfs -is an interactive debugger. It understands a number of commands. +supports. .TP -.I cat filespec -Dump the contents of the inode +.BI blocks " filespec" +Print the blocks used by the inode .I filespec to stdout. .TP -.I cd filespec -Change the current working directory to +.BI bmap " [ -a ] filespec logical_block [physical_block]" +Print or set the physical block number corresponding to the logical block number +.I logical_block +in the inode .IR filespec . +If the +.I \-a +flag is specified, try to allocate a block if necessary. +.TP +.BI block_dump " '[ -x ] [-f filespec] block_num" +Dump the file system block given by +.I block_num +in hex and ASCII format to the console. If the +.I \-f +option is specified, the block number is relative to the start of the given +.BR filespec . +If the +.I \-x +option is specified, the block is interpreted as an extended attribute +block and printed to show the structure of extended attribute data +structures. +.TP +.BI cat " filespec" +Dump the contents of the inode +.I filespec +to stdout. .TP -.I chroot filespec -Change the root directory to be the directory +.BI cd " filespec" +Change the current working directory to .IR filespec . .TP -.I close -Close the currently open file system. +.BI chroot " filespec" +Change the root directory to be the directory +.IR filespec . +.TP +.BI close " [-a]" +Close the currently open file system. If the +.I -a +option is specified, write out any changes to the superblock and block +group descriptors to all of the backup superblocks, not just to the +master superblock. +.TP +.BI clri " filespec" +Clear the contents of the inode +.IR filespec . .TP -.I clri file -Clear the contents of the inode -.IR file . +.BI copy_inode " source_inode destination_inode" +Copy the contents of the inode structure in +.I source_inode +and use it to overwrite the inode structure at +.IR destination_inode . .TP -.I dump [-p] filspec out_file -Dump the contents of the inode +.BI dirsearch " filespec filename" +Search the directory .I filespec -to the output file -.IR out_file . -If the -.I -p -option is given set the owner, group and permissions information on -.I out_file -to match +for +.IR filename . +.TP +.BI dirty " [-clean]" +Mark the file system as dirty, so that the superblocks will be written on exit. +Additionally, clear the superblock's valid flag, or set it if +.I -clean +is specified. +.TP +.BI dump " [-p] filespec out_file" +Dump the contents of the inode +.I filespec +to the output file +.IR out_file . +If the +.I -p +option is given set the owner, group and permissions information on +.I out_file +to match .IR filespec . .TP -.I expand_dir filespec +.BI dump_mmp " [mmp_block]" +Display the multiple-mount protection (mmp) field values. If +.I mmp_block +is specified then verify and dump the MMP values from the given block +number, otherwise use the +.B s_mmp_block +field in the superblock to locate and use the existing MMP block. +.TP +.BI dx_hash " [-h hash_alg] [-s hash_seed] filename" +Calculate the directory hash of +.IR filename . +The hash algorithm specified with +.I -h +may be +.BR legacy , " half_md4" ", or " tea . +The hash seed specified with +.I -s +must be in UUID format. +.TP +.BI dump_extents " [-n] [-l] filespec" +Dump the extent tree of the inode +.IR filespec . +The +.I -n +flag will cause +.B dump_extents +to only display the interior nodes in the extent tree. The +.I -l +flag will cause +.B dump_extents +to only display the leaf nodes in the extent tree. +.IP +(Please note that the length and range of blocks for the last extent in +an interior node is an estimate by the extents library functions, and is +not stored in file system data structures. Hence, the values displayed +may not necessarily by accurate and does not indicate a problem or +corruption in the file system.) +.TP +.B dump_unused +Dump unused blocks which contain non-null bytes. +.TP +.BI ea_get " [-f outfile]|[-xVC] [-r] filespec attr_name" +Retrieve the value of the extended attribute +.I attr_name +in the file +.I filespec +and write it either to stdout or to \fIoutfile\fR. +.TP +.BI ea_list " filespec +List the extended attributes associated with the file +.I filespec +to standard output. +.TP +.BI ea_set " [-f infile] [-r] filespec attr_name attr_value +Set the value of the extended attribute +.I attr_name +in the file +.I filespec +to the string value +.I attr_value +or read it from \fIinfile\fR. +.TP +.BI ea_rm " filespec attr_names... +Remove the extended attribute +.I attr_name +from the file \fIfilespec\fR. +.TP +.BI expand_dir " filespec" Expand the directory .IR filespec . .TP -.I feature [fs_feature] [-fs_feature] ... -Set or clear various filesystem features in the superblock. After setting -or clearing any filesystem features that were requested, print the current -state of the filesystem feature set. +.BI fallocate " filespec start_block [end_block] +Allocate and map uninitialized blocks into \fIfilespec\fR between +logical block \fIstart_block\fR and \fIend_block\fR, inclusive. If +\fIend_block\fR is not supplied, this function maps until it runs out +of free disk blocks or the maximum file size is reached. Existing +mappings are left alone. +.TP +.BI feature " [fs_feature] [-fs_feature] ..." +Set or clear various file system features in the superblock. After setting +or clearing any file system features that were requested, print the current +state of the file system feature set. .TP -.I find_free_block [goal] -Find the first free block, starting from +.BI filefrag " [-dvr] filespec" +Print the number of contiguous extents in +.IR filespec . +If +.I filespec +is a directory and the +.I -d +option is not specified, +.I filefrag +will print the number of contiguous extents for each file in +the directory. The +.I -v +option will cause +.I filefrag +print a tabular listing of the contiguous extents in the +file. The +.I -r +option will cause +.I filefrag +to do a recursive listing of the directory. +.TP +.BI find_free_block " [count [goal]]" +Find the first +.I count +free blocks, starting from .I goal -and allocate it. +and allocate it. Also available as +.BR ffb . .TP -.I find_free_inode [dir [mode]] -Find a free inode and allocate it. If present, +.BI find_free_inode " [dir [mode]]" +Find a free inode and allocate it. If present, .I dir -specifies the inode number of the directory -which the inode is to be located. The second +specifies the inode number of the directory +which the inode is to be located. The second optional argument .I mode specifies the permissions of the new inode. (If the directory bit is set -on the mode, the allocation routine will function differently.) +on the mode, the allocation routine will function differently.) Also +available as +.BR ffi . .TP -.I freeb block +.BI freeb " block [count]" Mark the block number .I block as not allocated. -.TP -.I freei filespec -Free the inode specified by +If the optional argument +.I count +is present, then +.I count +blocks starting at block number +.I block +will be marked as not allocated. +.TP +.BI freefrag " [-c chunk_kb]" +Report free space fragmentation on the currently open file system. +If the +.I \-c +option is specified then the filefrag command will print how many free +chunks of size +.I chunk_kb +can be found in the file system. The chunk size must be a power of two +and be larger than the file system block size. +.TP +.BI freei " filespec [num]" +Free the inode specified by .IR filespec . +If +.I num +is specified, also clear num-1 inodes after the specified inode. .TP -.I help -Print a list of commands understood by -.BR debugfs (8). +.BI get_quota " quota_type id" +Display quota information for given quota type (user, group, or project) and ID. .TP -.I icheck block ... +.B help +Print a list of commands understood by +.BR debugfs . +.TP +.BI htree_dump " filespec" +Dump the hash-indexed directory +.IR filespec , +showing its tree structure. +.TP +.BI icheck " block ..." Print a listing of the inodes which use the one or more blocks specified on the command line. .TP -.I initialize device blocksize +.BI inode_dump " [-b]|[-e]|[-x] filespec" +Print the contents of the inode data structure in hex and ASCII format. +The +.I \-b +option causes the command to only dump the contents of the +.B i_blocks +array. The +.I \-e +option causes the command to only dump the contents of the extra inode +space, which is used to store in-line extended attributes. The +.I \-x +option causes the command to dump the extra inode space interpreted and +extended attributes. This is useful to debug corrupted inodes +containing extended attributes. +.TP +.BI imap " filespec" +Print the location of the inode data structure (in the inode table) +of the inode +.IR filespec . +.TP +.BI init_filesys " device blocksize" Create an ext2 file system on .I device with device size .IR blocksize . -Note that this does not fully initialize all of the data structures; -to do this, use the +Note that this does not fully initialize all of the data structures; +to do this, use the .BR mke2fs (8) program. This is just a call to the low-level library, which sets up the superblock and block descriptors. .TP -.I kill_file filespec -Deallocate the inode +.BI journal_close +Close the open journal. +.TP +.BI journal_open " [-c] [-v ver] [-f ext_jnl] +Opens the journal for reading and writing. Journal checksumming can +be enabled by supplying \fI-c\fR; checksum formats 2 and 3 can be +selected with the \fI-v\fR option. An external journal can be loaded +from \fIext_jnl\fR. +.TP +.BI journal_run +Replay all transactions in the open journal. +.TP +.BI journal_write " [-b blocks] [-r revoke] [-c] file +Write a transaction to the open journal. The list of blocks to write +should be supplied as a comma-separated list in \fIblocks\fR; the +blocks themselves should be readable from \fIfile\fR. A list of +blocks to revoke can be supplied as a comma-separated list in +\fIrevoke\fR. By default, a commit record is written at the end; the +\fI-c\fR switch writes an uncommitted transaction. +.TP +.BI kill_file " filespec" +Deallocate the inode .I filespec and its blocks. Note that this does not remove any directory -entries (if any) to this inode. See the +entries (if any) to this inode. See the .BR rm (1) command if you wish to unlink a file. .TP -.I ln filespec dest_file -Create a link named +.BI lcd " directory" +Change the current working directory of the +.B debugfs +process to +.I directory +on the native file system. +.TP +.BI list_quota " quota_type" +Display quota information for given quota type (user, group, or project). +.TP +.BI ln " filespec dest_file" +Create a link named .I dest_file -which is a link to +which is a hard link to .IR filespec . Note this does not adjust the inode reference counts. .TP -.I ls [-l] filespec -Print a listing of the files in the directory +.BI logdump " [-acsOS] [-b block] [-i filespec] [-f journal_file] [output_file]" +Dump the contents of the ext3 journal. By default, dump the journal inode as +specified in the superblock. However, this can be overridden with the +.I \-i +option, which dumps the journal from the internal inode given by .IR filespec . +A regular file containing journal data can be specified using the +.I \-f +option. Finally, the +.I \-s +option utilizes the backup information in the superblock to locate the +journal. +.IP +The +.I \-S +option causes +.B logdump +to print the contents of the journal superblock. +.IP +The +.I \-a +option causes the +.B logdump +program to print the contents of all of the descriptor blocks. +The +.I \-b +option causes +.B logdump +to print all journal records that refer to the specified block. +The +.I \-c +option will print out the contents of all of the data blocks selected by +the +.I \-a +and +.I \-b +options. +.IP +The +.I \-O +option causes logdump to display old (checkpointed) journal entries. +This can be used to try to track down journal problems even after the +journal has been replayed. .TP -.I modify_inode filespec +.BI ls " [-l] [-c] [-d] [-p] [-r] filespec" +Print a listing of the files in the directory +.IR filespec . +The +.I \-c +flag causes directory block checksums (if present) to be displayed. +The +.I \-d +flag will list deleted entries in the directory. +The +.I \-l +flag will list files using a more verbose format. +The +.I \-p +flag will list the files in a format which is more easily parsable by +scripts, as well as making it more clear when there are spaces or other +non-printing characters at the end of filenames. +The +.I \-r +flag will force the printing of the filename, even if it is encrypted. +.TP +.BI list_deleted_inodes " [limit]" +List deleted inodes, optionally limited to those deleted within +.I limit +seconds ago. Also available as +.BR lsdel . +.IP +This command was useful for recovering from accidental file deletions +for ext2 file systems. Unfortunately, it is not useful for this purpose +if the files were deleted using ext3 or ext4, since the inode's +data blocks are no longer available after the inode is released. +.TP +.BI modify_inode " filespec" Modify the contents of the inode structure in the inode .IR filespec . +Also available as +.BR mi . .TP -.I mkdir filespec +.BI mkdir " filespec" Make a directory. .TP -.I mknod filespec [p|[[c|b] major minor]] +.BI mknod " filespec [p|[[c|b] major minor]]" Create a special device file (a named pipe, character or block device). -If a character or block device is to be made, the +If a character or block device is to be made, the .I major and .I minor device numbers must be specified. .TP -.I ncheck inode_num ... +.BI ncheck " [-c] inode_num ..." Take the requested list of inode numbers, and print a listing of pathnames -to those inodes. -.TP -.I open [-w] [-f] [-c] [-b blocksize] [-s superblock] device -Open a filesystem for editing. The -.I -w -flag causes the filesystem to be opened for writing. The -.I -f -flag forces the filesystem to be opened even if there are some unknown -or incompatible filesystem features which would normally -prevent the filesystem from being opened. The -.IR -c ", " -b ", and " -s -options behave the same as those to -.B debugfs -itself. +to those inodes. The +.I -c +flag will enable checking the file type information in the directory +entry to make sure it matches the inode's type. +.TP +.BI open " [-weficD] [-b blocksize] [-d image_filename] [-s superblock] [-z undo_file] device" +Open a file system for editing. The +.I -f +flag forces the file system to be opened even if there are some unknown +or incompatible file system features which would normally +prevent the file system from being opened. The +.I -e +flag causes the file system to be opened in exclusive mode. The +.IR -b ", " -c ", " -d ", " -i ", " -s ", " -w ", and " -D +options behave the same as the command-line options to +.BR debugfs . .TP -.I pwd +.BI punch " filespec start_blk [end_blk]" +Delete the blocks in the inode ranging from +.I start_blk +to +.IR end_blk . +If +.I end_blk +is omitted then this command will function as a truncate command; that +is, all of the blocks starting at +.I start_blk +through to the end of the file will be deallocated. +.TP +.BI symlink " filespec target" +Make a symbolic link. +.TP +.B pwd Print the current working directory. .TP -.I quit +.B quit Quit .B debugfs .TP -.I rm pathname -Unlink +.BI rdump " directory[...] destination" +Recursively dump +.IR directory , +or multiple +.IR directories , +and all its contents (including regular files, symbolic links, and other +directories) into the named +.IR destination , +which should be an existing directory on the native file system. +.TP +.BI rm " pathname" +Unlink .IR pathname . -If this causes the inode pointed to by +If this causes the inode pointed to by .I pathname to have no other references, deallocate the file. This command functions as the unlink() system call. -.I +.I .TP -.I rmdir filespec +.BI rmdir " filespec" Remove the directory .IR filespec . -This function is currently not implemented. .TP -.I setb block +.BI setb " block [count]" Mark the block number .I block as allocated. +If the optional argument +.I count +is present, then +.I count +blocks starting at block number +.I block +will be marked as allocated. +.TP +.BI set_block_group " bgnum field value" +Modify the block group descriptor specified by +.I bgnum +so that the block group descriptor field +.I field +has value +.IR value . +Also available as +.BR set_bg . +.TP +.BI set_current_time " time" +Set current time in seconds since Unix epoch to use when setting file system +fields. +.TP +.BI seti " filespec [num]" +Mark inode +.I filespec +as in use in the inode bitmap. If +.I num +is specified, also set num-1 inodes after the specified inode. .TP -.I seti filespec -Mark inode +.BI set_inode_field " filespec field value" +Modify the inode specified by .I filespec -as in use in the inode bitmap. +so that the inode field +.I field +has value +.I value. +The list of valid inode fields which can be set via this command +can be displayed by using the command: +.B set_inode_field -l +Also available as +.BR sif . +.TP +.BI set_mmp_value " field value" +Modify the multiple-mount protection (MMP) data so that the MMP field +.I field +has value +.I value. +The list of valid MMP fields which can be set via this command +can be displayed by using the command: +.B set_mmp_value -l +Also available as +.BR smmp . +.TP +.BI set_super_value " field value" +Set the superblock field +.I field +to +.I value. +The list of valid superblock fields which can be set via this command +can be displayed by using the command: +.B set_super_value -l +Also available as +.BR ssv . +.TP +.B show_debugfs_params +Display +.B debugfs +parameters such as information about currently opened file system. .TP -.I show_super_stats [-h] +.BI show_super_stats " [-h]" List the contents of the super block and the block group descriptors. If the .I -h -flag is given, only print out the superblock contents. +flag is given, only print out the superblock contents. Also available as +.BR stats . .TP -.I stat filespec +.BI stat " filespec" Display the contents of the inode structure of the inode .IR filespec . .TP -.I testb block +.B supported_features +Display file system features supported by this version of +.BR debugfs . +.TP +.BI testb " block [count]" Test if the block number .I block is marked as allocated in the block bitmap. +If the optional argument +.I count +is present, then +.I count +blocks starting at block number +.I block +will be tested. .TP -.I testi filespec -Test if the inode +.BI testi " filespec" +Test if the inode .I filespec is marked as allocated in the inode bitmap. .TP -.I unlink pathname -Remove the link specified by -.I pathname +.BI undel " [pathname]" +Undelete the specified inode number (which must be surrounded by angle +brackets) so that it and its blocks are marked in use, and optionally +link the recovered inode to the specified pathname. The +.B e2fsck +command should always be run after using the +.B undel +command to recover deleted files. +.IP +Note that if you are recovering a large number of deleted files, linking +the inode to a directory may require the directory to be expanded, which +could allocate a block that had been used by one of the +yet-to-be-undeleted files. So it is safer to undelete all of the +inodes without specifying a destination pathname, and then in a separate +pass, use the debugfs +.B link +command to link the inode to the destination pathname, or use +.B e2fsck +to check the file system and link all of the recovered inodes to the +lost+found directory. +.TP +.BI unlink " pathname" +Remove the link specified by +.I pathname to an inode. Note this does not adjust the inode reference counts. .TP -.I write source_file out_file -Create a file in the filesystem named -.IR out_file , -and copy the contents of +.BI write " source_file out_file" +Copy the contents of .I source_file -into the destination file. -.TP -.I lcd directory -Change the current working directory of the -.B debugfs -process to -.I directory -on the native filesystem. +into a newly-created file in the file system named +.IR out_file . +.TP +.BI zap_block " [-f filespec] [-o offset] [-l length] [-p pattern] block_num" +Overwrite the block specified by +.I block_num +with zero (NUL) bytes, or if +.I -p +is given use the byte specified by +.IR pattern . +If +.I -f +is given then +.I block_num +is relative to the start of the file given by +.IR filespec . +The +.I -o +and +.I -l +options limit the range of bytes to zap to the specified +.I offset +and +.I length +relative to the start of the block. +.TP +.BI zap_block " [-f filespec] [-b bit] block_num" +Bit-flip portions of the physical +.IR block_num . +If +.I -f +is given, then +.I block_num +is a logical block relative to the start of +.IR filespec . +.SH ENVIRONMENT VARIABLES .TP -.I rdump directory destination -Recursively dump -.I directory -and all its contents (including regular files, symbolic links, and other -directories) into the named -.I destination -which should be an existing directory on the native filesystem. -.SH SPECIFYING FILES -Many -.B debugfs -commands take a -.I filespec -as an argument to specify an inode (as opposed to a pathname) -in the filesystem which is currently opened by -.BR debugfs . +.B DEBUGFS_PAGER, PAGER The -.I filespec -argument may be specified in two forms. The first form is an inode -number surrounded by angle brackets, e.g., -.IR <2> . -The second form is a pathname; if the pathname is prefixed by a forward slash -('/'), then it is interpreted relative to the root of the filesystem -which is currently opened by -.BR debugfs . -If not, the pathname is -interpreted relative to the current working directory as maintained by -.BR debugfs . -This may be modified by using the .B debugfs -command -.IR cd . +program always pipes the output of the some commands through a +pager program. These commands include: +.IR show_super_stats " (" stats ), +.IR list_directory " (" ls ), +.IR show_inode_info " (" stat ), +.IR list_deleted_inodes " (" lsdel ), +and +.IR htree_dump . +The specific pager can explicitly specified by the +.B DEBUGFS_PAGER +environment variable, and if it is not set, by the +.B PAGER +environment variable. +.IP +Note that since a pager is always used, the +.BR less (1) +pager is not particularly appropriate, since it clears the screen before +displaying the output of the command and clears the output the screen +when the pager is exited. Many users prefer to use the +.BR less (1) +pager for most purposes, which is why the +.B DEBUGFS_PAGER +environment variable is available to override the more general +.B PAGER +environment variable. .SH AUTHOR .B debugfs was written by Theodore Ts'o . .SH SEE ALSO .BR dumpe2fs (8), +.BR tune2fs (8), .BR e2fsck (8), -.BR mke2fs (8) +.BR mke2fs (8), +.BR ext4 (5)