Quick ?s
Cheat Sheets
Man Pages
The Lynx
DEBUGFS(8)							    DEBUGFS(8)

       debugfs - ext2/ext3 file system debugger

       debugfs	[ -Vwci ] [ -b blocksize ] [ -s superblock ] [ -f cmd_file ] [
       -R request ] [ -d data_source_device ] [ device ]

       The debugfs program is an interactive file system debugger. It  can  be
       used to examine and change the state of an ext2 file system.
       device  is  the special file corresponding to the device containing the
       ext2 file system (e.g /dev/hdXX).

       -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.

       -c     Specifies that the file system should be opened in  catastrophic
	      mode,  in  which	the  inode and group bitmaps are not read ini
	      tially.  This can be useful  for	filesystems  with  significant
	      corruption,  but	because  of this, catastrophic mode forces the
	      filesystem to be opened read-only.

       -i     Specifies that device represents an ext2 image file  created  by
	      the  e2image  program.   Since the ext2 image file only contains
	      the superblock, block group descriptor, block and inode  alloca
	      tion  bitmaps,  and  the inode table, many debugfs commands will
	      not function properly.  Warning: no safety checks are in	place,
	      and debugfs may fail in interesting ways if commands such as ls,
	      dump, etc. are tried without specifying  the  data_source_device
	      using the -d option.  debugfs is a debugging tool.  It has rough

       -d data_source_device
	      Used with  the  -i  option,  specifies  that  data_source_device
	      should  be  used when reading blocks not found in the ext2 image
	      file.  This includes data, directory, and indirect blocks.

       -b blocksize
	      Forces the use of the given block  size  for  the  file  system,
	      rather than detecting the correct block size as normal.

       -s superblock
	      Causes  the  file  system  superblock  to be read from the given
	      block number, rather than the default (1).  If  you  give  a  -s
	      option, you must also give a -b option.

       -f cmd_file
	      Causes  debugfs  to  read in commands from cmd_file, and execute
	      them.  When debugfs is finished  executing  those  commands,  it
	      will exit.

       -R request
	      Causes  debugfs  to execute the single command request, and then

       -V     print the version number of debugfs and exit.

       Many debugfs commands take a filespec as  an  argument  to  specify  an
       inode  (as  opposed to a pathname) in the filesystem which is currently
       opened by debugfs.  The filespec  argument  may	be  specified  in  two
       forms.  The first form is an inode number surrounded by angle brackets,
       e.g., <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 debugfs.	 If  not,  the
       pathname  is  interpreted  relative to the current working directory as
       maintained by debugfs.  This may be modified by using the debugfs  com
       mand cd.

       This is a list of the commands which debugfs supports.

       bmap filespec logical_block
	      Print  the  physical  block  number corresponding to the logical
	      block number logical_block in the inode filespec.

       cat filespec
	      Dump the contents of the inode filespec to stdout.

       cd filespec
	      Change the current working directory to filespec.

       chroot filespec
	      Change the root directory to be the directory filespec.

       close  Close the currently open file system.

       clri file
	      Clear the contents of the inode file.

       dump [-p] filspec out_file
	      Dump the contents of the	inode  filespec  to  the  output  file
	      out_file.   If  the  -p option is given set the owner, group and
	      permissions information on out_file to match filespec.

       expand_dir filespec
	      Expand the directory filespec.

       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

       find_free_block [count [goal]]
	      Find  the  first count free blocks, starting from goal and allo
	      cate it.

       find_free_inode [dir [mode]]
	      Find a free inode and allocate it.  If  present,	dir  specifies
	      the  inode  number  of  the  directory  which the inode is to be
	      located.	The second optional argument mode specifies  the  per
	      missions	of the new inode.  (If the directory bit is set on the
	      mode, the allocation routine will function differently.)

       freeb block [count]
	      Mark the block number block as not allocated.  If  the  optional
	      argument	count  is present, then count blocks starting at block
	      number block will be marked as not allocated.

       freei filespec
	      Free the inode specified by filespec.

       help   Print a list of commands understood by debugfs(8).

       icheck block ...
	      Print a listing of the inodes which use the one or  more	blocks
	      specified on the command line.

       imap filespec
	      Print the location of the inode data structure (in the inode ta
	      ble) of the inode filespec.

       init_filesys device blocksize
	      Create an ext2 file system on device with device size blocksize.
	      Note  that this does not fully initialize all of the data struc
	      tures; to do this, use the mke2fs(8) program.  This  is  just  a
	      call  to the low-level library, which sets up the superblock and
	      block descriptors.

       kill_file filespec
	      Deallocate the inode filespec and its blocks.   Note  that  this
	      does  not  remove  any directory entries (if any) to this inode.
	      See the rm(1) command if you wish to unlink a file.

       lcd directory
	      Change the current working directory of the debugfs  process  to
	      directory on the native filesystem.

       ln filespec dest_file
	      Create a link named dest_file which is a link to filespec.  Note
	      this does not adjust the inode reference counts.

       logdump	[-acs]	[-b]  [-i]  [-f]  [out
	      Dump the contents of the ext3 journal.  By default, the  journal
	      inode  as  specified  in	the  superblock.  However, this can be
	      overridden with the -i option, which uses an inode specifier  to
	      specify  the journal to be used.	A file containing journal data
	      can be specified using the -f option.   Finally, the  -s	option
	      utilizes	the backup information in the superblock to locate the

	      The -a option causes the logdump program to print  the  contents
	      of  all  of the descriptor blocks.  The -b option causes logdump
	      to print all journal records that are  refer  to	the  specified
	      block.   The -c option will print out the contents of all of the
	      data blocks selected by the -a and -b options.

       ls [-l] [-d] filespec
	      Print a listing of the files in the directory filespec.  The  -l
	      flag  will  list files using a more verbose format.  The -d flag
	      will list deleted entries in the directory.

       modify_inode filespec
	      Modify the contents of the inode structure in  the  inode  file

       mkdir filespec
	      Make a directory.

       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
	      major and minor device numbers must be specified.

       ncheck inode_num ...
	      Take the requested list of inode numbers, and print a listing of
	      pathnames to those inodes.

       open [-w] [-e] [-f] [-i] [-c] [-b blocksize] [-s superblock] device
	      Open a filesystem for editing.  The -f flag forces the  filesys
	      tem  to be opened even if there are some unknown or incompatible
	      filesystem features which would normally prevent the  filesystem
	      from  being  opened.   The  -e  flag causes the filesystem to be
	      opened in exclusive mode.  The -b, -c, -i, -s,  and  -w  options
	      behave the same as the command-line options to debugfs.

       pwd    Print the current working directory.

       quit   Quit debugfs

       rdump directory destination
	      Recursively dump directory and all its contents (including regu
	      lar files, symbolic links, and other directories) into the named
	      destination  which should be an existing directory on the native

       rm pathname
	      Unlink pathname.	If this causes the inode pointed to  by  path
	      name  to	have  no  other references, deallocate the file.  This
	      command functions as the unlink() system call.

       rmdir filespec
	      Remove the directory filespec.

       setb block [count]
	      Mark the block number block as allocated.  If the optional argu
	      ment  count is present, then count blocks starting at block num
	      ber block will be marked as allocated.

       seti filespec
	      Mark inode filespec as in use in the inode bitmap.

       set_inode_field filespec field value
	      Modify the inode specified by filespec so that the  inode  field
	      field has value value.  The list of valid inode fields which can
	      be set via this command can be displayed by using  the  command:
	      set_inode_field -l

       set_super_value field value
	      Set  the	superblock  field  field  to value.  The list of valid
	      superblock fields which can be set via this command can be  dis
	      played by using the command: set_super_value -l

       show_super_stats [-h]
	      List  the  contents  of  the  super  block  and  the block group
	      descriptors.  If the -h  flag  is  given,  only  print  out  the
	      superblock contents.

       stat filespec
	      Display  the  contents of the inode structure of the inode file

       testb block [count]
	      Test if the block number block is marked	as  allocated  in  the
	      block  bitmap.   If the optional argument count is present, then
	      count blocks starting at block number block will be tested.

       testi filespec
	      Test if the inode filespec is marked as allocated in  the  inode

       unlink pathname
	      Remove  the  link  specified by pathname to an inode.  Note this
	      does not adjust the inode reference counts.

       write source_file out_file
	      Create a file in the filesystem named  out_file,	and  copy  the
	      contents of source_file into the destination file.

	      The  debugfs(8) program always pipes the output of the some com
	      mands  through  a  pager	program.   These   commands   include:
	      show_super_stats,        list_directory,	      show_inode_info,
	      list_deleted_inodes, and htree_dump.   The  specific  pager  can
	      explicitly  specified by the DEBUGFS_PAGER environment variable,
	      and if it is not set, by the PAGER environment variable.

	      Note that since a pager is always used, the less(1) pager is not
	      particularly appropriate, since it clears the screen before dis
	      playing the output of the command  and  clears  the  output  the
	      screen  when  the pager is exited.  Many users prefer to use the
	      less(1) pager for most purposes, which is why the  DEBUGFS_PAGER
	      environment  variable  is available to override the more general
	      PAGER environment variable.

       debugfs was written by Theodore Tso .

       dumpe2fs(8), e2fsck(8), mke2fs(8)

E2fsprogs version 1.40-WIP	 November 2006			    DEBUGFS(8)

Yals.net is © 1999-2009 Crescendo Communications
Sharing tech info on the web for more than a decade!
This page was generated Thu Apr 30 17:05:31 2009