reading hammer inode contents
Matthew Dillon
dillon at apollo.backplane.com
Wed Sep 30 09:38:07 PDT 2009
:Hi,
:
:How is it possible for me to read the contents on i-nodes in hammer?
:Also list the i-nodes that are in use or used earlier?
:
:Thanks
:
:--Siju
There is no hammer directive that will do this in a human readable way
(well, except 'hammer show' which has the nasty side effect of wanting
to dump everything, including bulk data).
But it is easy to dump the raw inodes, including any historical
(deleted or replaced older versions) of inodes using the
HAMMERIOC_MIRROR_READ ioctl.
You would have to write some C code and you would have to learn a bit
about constructing B-Tree key ranges for the ioctl, and then you
would have to parse out the records from the mirroring stream.
Then you could print out the inode records in a human readable form.
It would make a nice little mini-project if someone wants to try
writing the extension to the hammer utility to do it. There are some
good examples... the 'hammer mirror-dump' directive parses stuff out
into a human readable form so you have to glue together constructing
the correct B-Tree range with some conditionals to just extract the
inode records and then push the results through code similar to what
hammer mirror-dump does to print the inodes out in human-readable form.
What do you need the inode data for?
-Matt
Matthew Dillon
<dillon at backplane.com>
More information about the Users
mailing list