jfs_debugfs(8)

NAME
jfs_debugfs - shell-type JFS file system editor

SYNOPSIS
jfs_debugfs device

DESCRIPTION

jfs_debugfs is a program which can be used to perform various low-level actions on a JFS formatted device.

device is the special file name corresponding to the actual device to be edited (e.g. /dev/hdb1).

jfs_debugfs must be run as root.

COMMANDS

a[lter] <block> <offset> <hex_string>
     replaces the data located at the <offset> of <block> with <hex_string>

    <block> is the block number - given in decimal

    <offset> is the offset within that block - given in hexadecimal

    <hex_string> is an even-numbered string of hexadecimal digits to write to the disk

b[tree] <block> [<offset>]
    * not implemented yet *
     displays one node of the btree located at <offset> of <block> and enters a subcommand mode to navigate the btree

    SUBCOMMANDS:
     l => visit left sibling
     m => modify current node
     p => visit parent node
     r => visit right sibling
     [0-9] => visit the n'th child node
     x => exit subcommand mode

cb[blfsck]
     displays the area used by ClearBadBlockList for communication with fsck

    SUBCOMMANDS:
     m => modify entries
     x => exit subcommand mode

dir[ectory] <inode_number> [<file_set>]
     displays the directory entries at <inode_number> and enters subcommand mode

    <inode_number> is the directory's inode - given in decimal

    <file_set> currently must be zero

    SUBCOMMANDS:
     m => modify entries
     x => exit subcommand mode

d[isplay] [<block> [<offset> [<format> [<count>]]]]
    displays <count> objects located at the <offset> of <block> in <format>

    <block> is the block number - given in decimal

    <offset> is the offset within <block> - given in hexadecimal

    <format> is one of the following:
     a => ascii
     b => block allocation map
     d => decimal
     i => inode
     I => inode allocation map
     s => superblock
     x => hexadecimal
     X => extent allocation descriptor

    <count> is the number of objects to display - given in decimal

dm[ap]
     displays aggregate disk (block) map

    SUBCOMMANDS
     m => modify map fields
     f => display free count
     t => display tree levels
     x => exit subcommand mode

dt[ree] <inode_number> [<file_set>]
     displays root of the directory btree located at <inode_number> and enters a subcommand mode to navigate the btree

    <inode_number> is the directory's inode - given in decimal

    <file_set> currently must be zero

    SUBCOMMANDS
     l => visit left sibling
     m => modify current node
     p => visit parent node (not parent directory)
     r => visit right sibling
     [0-9] => visit the n'th child node
     x => exit subcommand mode

fsckw[sphdr]
     displays the header of the fsck workspace in the aggregate

    SUBCOMMANDS:
     m => modify entries
     x => exit subcommand mode

h[elp] [<command>]
     displays help for <command>
     if no command is given, all possible commands are displayed

ia[g] [<IAG_number>] [a | s | <file_set>]
     displays IAG information for <IAG_number> and enters subcommand mode

    <IAG_number> is given in decimal

    a is to use the primary aggregate inode table

    s is to use the secondary aggregate inode table

    <file_set> currently must be zero

    SUBCOMMANDS
     e => display/modify inode extents map
     m => modify IAG
     p => display/modify persistent map
     w => display/modify working map
     x => exit subcommand mode

i[node] [<inode_number>] [a | s | <file_set>]
     displays inode information for <inode_number> and enters subcommand mode

    <inode_number> is given in decimal

    a is to use the primary aggregate inode table

    s is to use the secondary aggregate inode table

    <file_set> currently must be zero

    SUBCOMMANDS
     a => display/modify inode's ACL
     m => modify inode
     x => exit subcommand mode

logs[uper]
     displays the journal log superblock and enters subcommand mode

    SUBCOMMANDS
     m => modify journal log superblock
     x => exit subcommand mode

q[uit]
     exits jfs_debugfs

se[t] [<variable> <value>]
    * not implemented yet *
     set user-defined <variable> to <value>
     if no arguments are given, displays all set variables

    <variable> must begin with an alphabetic character

su[perblock] [p | s]
     displays superblock data

    p displays the primary superblock

    s displays the secondary superblock

    SUBCOMMANDS:
     m => modify entries
     x => exit subcommand mode

s2p[erblock] [p | s]
     displays alternate superblock data

    p displays the primary superblock

    s displays the secondary superblock

    SUBCOMMANDS:
     m => modify entries
     x => exit subcommand mode

u[nset] <variable>
    * not implemented yet *
     deletes user-defined <variable>

xt[ree] <inode_number> [<file_set>]
     displays root of the non-directory btree located at <inode_number> and enters a subcommand mode to navigate the btree

    <inode_number> is the directory's inode - given in decimal

    <file_set> currently must be zero

    SUBCOMMANDS
     l => visit left sibling
     m => modify current node
     p => visit parent node (not parent directory)
     r => visit right sibling
     [0-9] => visit the n'th child node
     x => exit subcommand mode

REPORTING BUGS

If you find a bug in JFS or jfs_debugfs, please report it via the bug tracking system ("Report Bugs" section) of the JFS project web site:
http://jfs.sourceforge.net/

Please send as much pertinent information as possible, including the complete output of running jfs_fsck with the -v and -n options on the JFS device.

SEE ALSO
jfs_fsck(8), jfs_mkfs(8), jfs_fscklog(8), jfs_logdump(8), jfs_tune(8),

AUTHORS
Barry Arndt  (barndt@us.ibm.com)
William Braswell, Jr.

jfs_debugfs is maintained by IBM.
See the JFS project web site for more details:
http://jfs.sourceforge.net/