explore-fs-tree
Description
The explore-fs-tree command provides an interface via which you
can explore a filesystem B-tree (or subtree). You specify the B-tree either:
directly, by specifying the block address of a filesystem B-tree (root) node via
--fs; orindirectly, by specifying sufficient info for the block address of a B-tree root node to be determined. That is, specify either:
the block address of a volume superblock via
--fs; ora volume via
--volumeor--volume-name, optionally along with a maximum transaction ID via--max-xid(the most recent filesystem tree with a transaction ID that doesn’t exceed the one specified will be explored).
You must also specify an object map so that the Virtual object IDs used in the
filesystem tree to refer to other nodes within it can be resolved to block
addresses in order to locate the nodes. You specify the object map either
directly or indirectly as described in explore-omap-tree.
Direct and indirect specifications may be mixed, in which case direct
specifications take precedence. In other words, if a volume is specified via
--volume or --volume-name, the implied choice of volume
superblock can be overriden via --fs, and the implied choice of object
map can be overridden via --omap.
If both the filesystem tree and object map are unspecified, the default is
--volume 1; that is, the most recent filesystem tree of the first volume
will be explored using the corresponding object map. If one or the other is
specified, but not both, that’s an error.
When the command is run, Drat will display the entries within the specified
B-tree (root) node, each of which is a key given by an (FSOID, FSRT) pair.
You will then be prompted to choose an entry by entering its index. Drat will
then read the corresponding child node and display its entries. You can repeat
this process of entry selection until you select an entry in a leaf node, after
which Drat will display info about the corresponding record in the tree. At any
point, you can enter .. to go back to the parent node, or enter nothing to
exit Drat.
When viewing a non-leaf node, an extra set of columns, Target child node, is
shown, which displays the Virtual OID of the child node that the entry points
to, as well as the the Block address that the object map resolves that OID to,
and the Actual OID that appears in the data contained in that block. Following
each Actual OID is a checkbox ( ), which will be checked (X) if that value
does not match the value in the OID column, indicating that the mapping is
bad. A well-formed object map will not result in any checkboxes being checked.
When viewing a leaf node, human-readable descriptions of the record type are shown in the FSRT column, and extra data is shown for convenience based on the record type. For example, if the record is a dentry, then the corresponding inode’s FSOID, type, and name are shown.
Example usage and output
$ drat --container /dev/disk2s2 explore-fs-tree --fs 0xd297a --omap 0xd0146
Opening file at `/dev/disk0s2` in read-only mode ... OK.
Finding object mappings tree via block address: 0xd0146
Reading block 0xd0146 ... validating ... OK.
This is a B-tree root node for an object map.
Finding filesystem tree via block address: 0xd297a
Reading block 0xd297a ... validating ... OK.
This is a B-tree root node for a filesystem.
Height of tree is 4.
Node has 13 entries, as follows:
+-------+------------------+-----------------------------------------+
| | | | Target child node |
| Index | FSOID | FSRT |----------+---------------+--------------+
| | | | OID | Block address | Actual OID |
+-------+-----------+------+----------+---------------+--------------+
| 0 | 0x1 | 0x9 | 0xdd29 | 0xed993 | 0xdd29 ( ) |
| 1 | 0xaf3a4 | 0x5 | 0x2f77e | 0xe0a41 | 0x2f77e ( ) |
| 2 | 0xa43cf2 | 0x3 | 0x243fa9 | 0xe2645 | 0x243fa9 ( ) |
| 3 | 0xd20da9 | 0x8 | 0x38715f | 0xd6fb4 | 0x38715f ( ) |
| 4 | 0xf4ff0c | 0x8 | 0x41fe57 | 0xe3780 | 0x41fe57 ( ) |
| 5 | 0x11f65da | 0x3 | 0x4f9bec | 0xdd44b | 0x4f9bec ( ) |
| 6 | 0x1314268 | 0x9 | 0x5629f5 | 0xe5a00 | 0x5629f5 ( ) |
| 7 | 0x1428c41 | 0x3 | 0x5cce9b | 0xeb99e | 0x5cce9b ( ) |
| 8 | 0x1499c33 | 0x4 | 0x5e8b16 | 0xebeec | 0x5e8b16 ( ) |
| 9 | 0x153f3be | 0x4 | 0x620615 | 0xdb928 | 0x620615 ( ) |
| 10 | 0x15f71df | 0x3 | 0x6627d0 | 0xd5e71 | 0x6627d0 ( ) |
| 11 | 0x1678e4e | 0x3 | 0x67e91f | 0xda643 | 0x67e91f ( ) |
| 12 | 0x16e1f95 | 0x3 | 0x690b02 | 0xd5c8f | 0x690b02 ( ) |
+-------+-----------+------+----------+---------------+--------------+
Current path: (_, _, _, _)
Choose an entry [.., 0-12]: 1
Child node has Virtual OID 0x2f77e, maps to block 0xe0a41.
Reading block 0xe0a41 ... validating ... OK.
Node has 94 entries, as follows:
+-------+-----------------+-----------------------------------------+
| | | | Target child node |
| Index | FSOID | FSRT |----------+---------------+--------------+
| | | | OID | Block address | Actual OID |
+-------+----------+------+----------+---------------+--------------+
| 0 | 0xaf3a4 | 0x5 | 0x18ef1 | 0xd894c | 0x18ef1 ( ) |
| 1 | 0xaf9d9 | 0x8 | 0x18f71 | 0xdfe02 | 0x18f71 ( ) |
| 2 | 0xafcf1 | 0x3 | 0xdb001 | 0xe1c51 | 0xdb001 ( ) |
| 3 | 0xaffcc | 0x5 | 0x18ff2 | 0xe1c57 | 0x18ff2 ( ) |
| 4 | 0xb02b1 | 0x5 | 0xdb096 | 0xd8bd5 | 0xdb096 ( ) |
| 5 | 0xb06fe | 0x3 | 0x19070 | 0xd85aa | 0x19070 ( ) |
| 6 | 0xb0d79 | 0x4 | 0x190e4 | 0xd6ecd | 0x190e4 ( ) |
| 7 | 0xcb602 | 0x4 | 0x1975d | 0xd1b20 | 0x1975d ( ) |
| 8 | 0xce5e4 | 0x3 | 0x19a56 | 0xe3903 | 0x19a56 ( ) |
| 9 | 0xd7090 | 0x4 | 0x1cf1a | 0xe48b1 | 0x1cf1a ( ) |
| 10 | 0xd76b2 | 0x3 | 0x1cf35 | 0xe0160 | 0x1cf35 ( ) |
| 11 | 0xd96d8 | 0x9 | 0x1a7b7 | 0xe0167 | 0x1a7b7 ( ) |
| 12 | 0xda81f | 0x3 | 0x1a8af | 0xe0177 | 0x1a8af ( ) |
| 13 | 0xdb811 | 0x9 | 0x1e15b | 0xe01b0 | 0x1e15b ( ) |
| 14 | 0xdd711 | 0x4 | 0x22fbf | 0xdfbd3 | 0x22fbf ( ) |
| 15 | 0xddd50 | 0x3 | 0x1eb31 | 0xd9473 | 0x1eb31 ( ) |
| 16 | 0xde2f0 | 0x3 | 0x1ecaf | 0xe01cb | 0x1ecaf ( ) |
| 17 | 0xdf371 | 0x3 | 0x1f100 | 0xe01f0 | 0x1f100 ( ) |
| 18 | 0xe2866 | 0x3 | 0x1f4a1 | 0xdd298 | 0x1f4a1 ( ) |
| 19 | 0x143365 | 0x3 | 0x22bf3 | 0xd2e56 | 0x22bf3 ( ) |
| 20 | 0x1478f9 | 0x5 | 0x236c8 | 0xd54f0 | 0x236c8 ( ) |
| 21 | 0x1595c1 | 0x3 | 0x2c6eb | 0xd4c43 | 0x2c6eb ( ) |
| 22 | 0x15a089 | 0x9 | 0x2c78a | 0xe05f4 | 0x2c78a ( ) |
| 23 | 0x15af6b | 0x9 | 0x2cb92 | 0xe0654 | 0x2cb92 ( ) |
| 24 | 0x1799fd | 0x3 | 0x31de9 | 0xda18e | 0x31de9 ( ) |
| 25 | 0x179fcd | 0x3 | 0x31f0d | 0xdfca9 | 0x31f0d ( ) |
| 26 | 0x17a00a | 0x3 | 0x31e6c | 0xdf530 | 0x31e6c ( ) |
| 27 | 0x17a7c8 | 0x3 | 0x31ef9 | 0xda57f | 0x31ef9 ( ) |
| 28 | 0x1823fc | 0x9 | 0x32ddd | 0xe1075 | 0x32ddd ( ) |
| 29 | 0x182924 | 0x3 | 0x32e55 | 0xd2f36 | 0x32e55 ( ) |
| 30 | 0x183213 | 0x3 | 0x32f01 | 0xd89df | 0x32f01 ( ) |
| 31 | 0x1d683c | 0x4 | 0x5623a | 0xdf38d | 0x5623a ( ) |
| 32 | 0x22adf7 | 0x4 | 0x8e042 | 0xda2bc | 0x8e042 ( ) |
| 33 | 0x287b71 | 0x3 | 0x943cb | 0xe015b | 0x943cb ( ) |
| 34 | 0x2b7e2f | 0x4 | 0xb1dd7 | 0xe29e8 | 0xb1dd7 ( ) |
| 35 | 0x2d4ed2 | 0x6 | 0xb4769 | 0xda2c4 | 0xb4769 ( ) |
| 36 | 0x2e49cf | 0x3 | 0xbb071 | 0xd2541 | 0xbb071 ( ) |
| 37 | 0x2e4b7e | 0x9 | 0xba460 | 0xd250b | 0xba460 ( ) |
| 38 | 0x2ea142 | 0x8 | 0xbb558 | 0xe4aef | 0xbb558 ( ) |
| 39 | 0x2eb39d | 0x3 | 0xbbe75 | 0xdd2b8 | 0xbbe75 ( ) |
| 40 | 0x2eb86f | 0x3 | 0xbc079 | 0xd0355 | 0xbc079 ( ) |
| 41 | 0x2f7f6d | 0x3 | 0xc05f4 | 0xe76a6 | 0xc05f4 ( ) |
| 42 | 0x2f840b | 0x4 | 0xc0668 | 0xe74c2 | 0xc0668 ( ) |
| 43 | 0x2f89c5 | 0x4 | 0xc06de | 0xe73e0 | 0xc06de ( ) |
| 44 | 0x2f8f79 | 0x4 | 0xc0750 | 0xd9c21 | 0xc0750 ( ) |
| 45 | 0x2f956b | 0x4 | 0xc07ce | 0xe78c1 | 0xc07ce ( ) |
| 46 | 0x2f9af8 | 0x3 | 0xc0843 | 0xd2774 | 0xc0843 ( ) |
| 47 | 0x32815a | 0x3 | 0xc11b2 | 0xd394f | 0xc11b2 ( ) |
| 48 | 0x333c07 | 0x3 | 0xd0fd0 | 0xdf268 | 0xd0fd0 ( ) |
| 49 | 0x37fb42 | 0x3 | 0xe94a8 | 0xd9978 | 0xe94a8 ( ) |
| 50 | 0x3c4c65 | 0x3 | 0xffb5f | 0xda92e | 0xffb5f ( ) |
| 51 | 0x43e4d8 | 0x3 | 0x120fdb | 0xdfa52 | 0x120fdb ( ) |
| 52 | 0x47457f | 0x3 | 0x13ac2d | 0xdfbc9 | 0x13ac2d ( ) |
| 53 | 0x47491b | 0x9 | 0x13ac9b | 0xd78c1 | 0x13ac9b ( ) |
| 54 | 0x4afc54 | 0x8 | 0x13be67 | 0xd5ba8 | 0x13be67 ( ) |
| 55 | 0x4f0f95 | 0x3 | 0x160f9d | 0xdbfd5 | 0x160f9d ( ) |
| 56 | 0x4f168d | 0x3 | 0x161026 | 0xd526f | 0x161026 ( ) |
| 57 | 0x4f28d2 | 0x3 | 0x1610ae | 0xe5380 | 0x1610ae ( ) |
| 58 | 0x57c70b | 0x3 | 0x1843ab | 0xd9b9d | 0x1843ab ( ) |
| 59 | 0x57cba2 | 0x3 | 0x184a2b | 0xd9f1c | 0x184a2b ( ) |
| 60 | 0x5d8aca | 0x9 | 0x1a476d | 0xe630d | 0x1a476d ( ) |
| 61 | 0x5df9f8 | 0x9 | 0x1a53a9 | 0xe4202 | 0x1a53a9 ( ) |
| 62 | 0x5f4745 | 0x3 | 0x1a4f80 | 0xe43a2 | 0x1a4f80 ( ) |
| 63 | 0x5fdd5c | 0x3 | 0x1a538d | 0xe1940 | 0x1a538d ( ) |
| 64 | 0x6080bc | 0x3 | 0x1a5b6d | 0xd6b14 | 0x1a5b6d ( ) |
| 65 | 0x649eb8 | 0x9 | 0x1b82aa | 0xdf7a5 | 0x1b82aa ( ) |
| 66 | 0x66912c | 0x4 | 0x1bf13d | 0xe3927 | 0x1bf13d ( ) |
| 67 | 0x6b9ddc | 0x3 | 0x25c9fa | 0xd7e9f | 0x25c9fa ( ) |
| 68 | 0x72baa8 | 0x3 | 0x1fef96 | 0xdcdb8 | 0x1fef96 ( ) |
| 69 | 0x744bc1 | 0x3 | 0x20a607 | 0xd3c88 | 0x20a607 ( ) |
| 70 | 0x744dce | 0x3 | 0x20b9ca | 0xdd729 | 0x20b9ca ( ) |
| 71 | 0x744e02 | 0x8 | 0x209e5a | 0xd80ee | 0x209e5a ( ) |
| 72 | 0x7451fc | 0x3 | 0x209ec3 | 0xef591 | 0x209ec3 ( ) |
| 73 | 0x745a15 | 0x9 | 0x20a00a | 0xe5107 | 0x20a00a ( ) |
| 74 | 0x745ee1 | 0x8 | 0x20a08b | 0xe44dd | 0x20a08b ( ) |
| 75 | 0x746977 | 0x3 | 0x20a15b | 0xed8c4 | 0x20a15b ( ) |
| 76 | 0x7828dc | 0x3 | 0x216ad0 | 0xd81e7 | 0x216ad0 ( ) |
| 77 | 0x7ce9f1 | 0x3 | 0x22b142 | 0xd9644 | 0x22b142 ( ) |
| 78 | 0x803df5 | 0x3 | 0x2310fe | 0xdcab4 | 0x2310fe ( ) |
| 79 | 0x84846b | 0x9 | 0x25129a | 0xd413e | 0x25129a ( ) |
| 80 | 0x86d1b5 | 0x3 | 0x257c99 | 0xd7480 | 0x257c99 ( ) |
| 81 | 0x87b65b | 0x9 | 0x25bd0d | 0xdd6aa | 0x25bd0d ( ) |
| 82 | 0x88b49e | 0x3 | 0x25ca62 | 0xea7e0 | 0x25ca62 ( ) |
| 83 | 0x8fd89b | 0x9 | 0x2710ad | 0xe27aa | 0x2710ad ( ) |
| 84 | 0x8fdb17 | 0x4 | 0x2712c9 | 0xd1936 | 0x2712c9 ( ) |
| 85 | 0x8fdb44 | 0x3 | 0x271117 | 0xd6d76 | 0x271117 ( ) |
| 86 | 0x8fe224 | 0x3 | 0x2711a9 | 0xd518c | 0x2711a9 ( ) |
| 87 | 0x8fe3d4 | 0x4 | 0x27121e | 0xd5be7 | 0x27121e ( ) |
| 88 | 0x8feaff | 0x8 | 0x2712a2 | 0xd470d | 0x2712a2 ( ) |
| 89 | 0x94bf69 | 0x3 | 0x2818d9 | 0xd4c80 | 0x2818d9 ( ) |
| 90 | 0x995688 | 0x3 | 0x28875a | 0xdf433 | 0x28875a ( ) |
| 91 | 0x9cbb60 | 0x9 | 0x28be2b | 0xde6bd | 0x28be2b ( ) |
| 92 | 0x9e8db6 | 0x3 | 0x2a1ecf | 0xe0039 | 0x2a1ecf ( ) |
| 93 | 0xa21883 | 0x3 | 0x2a728c | 0xd9965 | 0x2a728c ( ) |
+-------+----------+------+----------+---------------+--------------+
Current path: (1, _, _, _)
Choose an entry [.., 0-93]: 30
Child node has Virtual OID 0x32f01, maps to block 0xd89df.
Reading block 0xd89df ... validating ... OK.
Node has 65 entries, as follows:
+-------+-----------------+-----------------------------------------+
| | | | Target child node |
| Index | FSOID | FSRT |----------+---------------+--------------+
| | | | OID | Block address | Actual OID |
+-------+----------+------+----------+---------------+--------------+
| 0 | 0x183213 | 0x3 | 0x32efd | 0xd6494 | 0x32efd ( ) |
| 1 | 0x183bf7 | 0x3 | 0x32f89 | 0xd128c | 0x32f89 ( ) |
| 2 | 0x185464 | 0x3 | 0x33457 | 0xd9748 | 0x33457 ( ) |
| 3 | 0x18552b | 0x6 | 0x33564 | 0xe115b | 0x33564 ( ) |
| 4 | 0x187983 | 0x3 | 0x37adb | 0xd8f96 | 0x37adb ( ) |
| 5 | 0x18a6a4 | 0x6 | 0x3b3a0 | 0xe9e4c | 0x3b3a0 ( ) |
| 6 | 0x18a962 | 0x9 | 0x3b3ac | 0xde0dd | 0x3b3ac ( ) |
| 7 | 0x18a964 | 0x9 | 0x3b3f6 | 0xd32e1 | 0x3b3f6 ( ) |
| 8 | 0x18a96f | 0x3 | 0x3b3f9 | 0xe308d | 0x3b3f9 ( ) |
| 9 | 0x18a971 | 0x3 | 0x3b3f7 | 0xe3c1f | 0x3b3f7 ( ) |
| 10 | 0x18a985 | 0x3 | 0x3b3f8 | 0xe5deb | 0x3b3f8 ( ) |
| 11 | 0x18a999 | 0x3 | 0x3b3fc | 0xe57c0 | 0x3b3fc ( ) |
| 12 | 0x18ba67 | 0x9 | 0x3d295 | 0xd10e7 | 0x3d295 ( ) |
| 13 | 0x18ba6b | 0x3 | 0x3d293 | 0xd10e5 | 0x3d293 ( ) |
| 14 | 0x18ba80 | 0x3 | 0x3d294 | 0xd10e6 | 0x3d294 ( ) |
| 15 | 0x18ba93 | 0x4 | 0x3d296 | 0xe5a2d | 0x3d296 ( ) |
| 16 | 0x18e7c3 | 0x3 | 0x3d2ca | 0xea935 | 0x3d2ca ( ) |
| 17 | 0x18e7cb | 0x4 | 0x3d79b | 0xeae76 | 0x3d79b ( ) |
| 18 | 0x18e827 | 0x6 | 0x3d7b4 | 0xea93e | 0x3d7b4 ( ) |
| 19 | 0x18e8fb | 0x9 | 0x3d7b6 | 0xd13a6 | 0x3d7b6 ( ) |
| 20 | 0x18e8fb | 0x9 | 0x209c65 | 0xea942 | 0x209c65 ( ) |
| 21 | 0x18e91d | 0x3 | 0x3d7b9 | 0xeaa15 | 0x3d7b9 ( ) |
| 22 | 0x18e96c | 0x4 | 0x3d7c1 | 0xe4931 | 0x3d7c1 ( ) |
| 23 | 0x18e98f | 0x4 | 0x3d7ce | 0xe2c98 | 0x3d7ce ( ) |
| 24 | 0x1918c7 | 0x8 | 0x3ddca | 0xe6e13 | 0x3ddca ( ) |
| 25 | 0x19196b | 0x9 | 0x3de4d | 0xe3073 | 0x3de4d ( ) |
| 26 | 0x191973 | 0x4 | 0x3de50 | 0xdde67 | 0x3de50 ( ) |
| 27 | 0x191975 | 0x4 | 0x3de4e | 0xe3074 | 0x3de4e ( ) |
| 28 | 0x191989 | 0x4 | 0x3de4f | 0xe33b0 | 0x3de4f ( ) |
| 29 | 0x19199f | 0x3 | 0x3de51 | 0xeb69d | 0x3de51 ( ) |
| 30 | 0x191b1c | 0x3 | 0x3de81 | 0xd0831 | 0x3de81 ( ) |
| 31 | 0x191d0a | 0x6 | 0x3de9c | 0xda6a8 | 0x3de9c ( ) |
| 32 | 0x192004 | 0x6 | 0x3df11 | 0xd250c | 0x3df11 ( ) |
| 33 | 0x192170 | 0x3 | 0x3df2c | 0xd60aa | 0x3df2c ( ) |
| 34 | 0x193c56 | 0x8 | 0x42396 | 0xd1306 | 0x42396 ( ) |
| 35 | 0x197686 | 0x3 | 0x43f58 | 0xd08db | 0x43f58 ( ) |
| 36 | 0x197cd9 | 0x9 | 0x44247 | 0xde436 | 0x44247 ( ) |
| 37 | 0x19bacf | 0x9 | 0x446f7 | 0xe00c7 | 0x446f7 ( ) |
| 38 | 0x19badc | 0x9 | 0x44a7e | 0xe86f1 | 0x44a7e ( ) |
| 39 | 0x19baed | 0x6 | 0x44a7f | 0xd2a15 | 0x44a7f ( ) |
| 40 | 0x1a1150 | 0x3 | 0x453b0 | 0xd1322 | 0x453b0 ( ) |
| 41 | 0x1a2b18 | 0x3 | 0x4819d | 0xd15c1 | 0x4819d ( ) |
| 42 | 0x1a71f9 | 0x6 | 0x49491 | 0xf239e | 0x49491 ( ) |
| 43 | 0x1a71fe | 0x4 | 0x4c416 | 0xd10f9 | 0x4c416 ( ) |
| 44 | 0x1a720e | 0x3 | 0x4c417 | 0xd10fb | 0x4c417 ( ) |
| 45 | 0x1a7221 | 0x4 | 0x4c419 | 0xe6c90 | 0x4c419 ( ) |
| 46 | 0x1a7761 | 0x3 | 0x4c481 | 0xdefda | 0x4c481 ( ) |
| 47 | 0x1ae04f | 0x3 | 0x547cb | 0xdbf66 | 0x547cb ( ) |
| 48 | 0x1ae061 | 0x6 | 0x54c62 | 0xda59d | 0x54c62 ( ) |
| 49 | 0x1b2e00 | 0x3 | 0x55c2c | 0xd1737 | 0x55c2c ( ) |
| 50 | 0x1b33aa | 0x4 | 0x57d8b | 0xd6332 | 0x57d8b ( ) |
| 51 | 0x1b38a9 | 0x3 | 0x57e66 | 0xda582 | 0x57e66 ( ) |
| 52 | 0x1b3d5e | 0x3 | 0x57e67 | 0xe0759 | 0x57e67 ( ) |
| 53 | 0x1b5399 | 0x4 | 0x58248 | 0xe20e8 | 0x58248 ( ) |
| 54 | 0x1bb366 | 0x3 | 0x5d1dd | 0xd027e | 0x5d1dd ( ) |
| 55 | 0x1bf693 | 0x8 | 0x62440 | 0xea807 | 0x62440 ( ) |
| 56 | 0x1d401c | 0x6 | 0x658b6 | 0xd7efd | 0x658b6 ( ) |
| 57 | 0x1d4029 | 0x8 | 0x65f22 | 0xea6ef | 0x65f22 ( ) |
| 58 | 0x1d4037 | 0x8 | 0x65f23 | 0xd7fc2 | 0x65f23 ( ) |
| 59 | 0x1d4299 | 0x3 | 0x65f29 | 0xdf4a7 | 0x65f29 ( ) |
| 60 | 0x1d45a8 | 0x4 | 0x65f82 | 0xddb2a | 0x65f82 ( ) |
| 61 | 0x1d45ae | 0x3 | 0x65fae | 0xea73e | 0x65fae ( ) |
| 62 | 0x1d45b9 | 0x4 | 0x65faf | 0xde792 | 0x65faf ( ) |
| 63 | 0x1d45d2 | 0x8 | 0x65fb1 | 0xe961e | 0x65fb1 ( ) |
| 64 | 0x1d5e9c | 0x3 | 0x67303 | 0xe852e | 0x67303 ( ) |
+-------+----------+------+----------+---------------+--------------+
Current path: (1, 30, _, _)
Choose an entry [.., 0-64]: 17
Child node has Virtual OID 0x3d79b, maps to block 0xeae76.
Reading block 0xeae76 ... validating ... OK.
Node has 30 entries, as follows:
+-------+----------+------------------+
| Index | FSOID | FSRT |
+-------+----------+------------------+
| 0 | 0x18e7cb | 0x4, xattr |
+-------+----------+------------------+
| 1 | 0x18e7cc | 0x3, inode |
| 2 | 0x18e7cc | 0x4, xattr |
| 3 | 0x18e7cc | 0x6, dstream |
| 4 | 0x18e7cc | 0x8, file extent |
+-------+----------+------------------+
| 5 | 0x18e7cd | 0x3, inode |
| 6 | 0x18e7cd | 0x4, xattr |
| 7 | 0x18e7cd | 0x6, dstream |
| 8 | 0x18e7cd | 0x8, file extent |
+-------+----------+------------------+
| 9 | 0x18e825 | 0x3, inode |
| 10 | 0x18e825 | 0x4, xattr |
| | | +-------------+----------------+--------------------+
| | | | Inode FSOID | Inode type | Inode name |
| | | +-------------+----------------+--------------------+
| 11 | 0x18e825 | 0x9, dentry | 0x169da65 | 0x4, directory | 83bc0baa3881f265_0 |
| 12 | 0x18e825 | 0x9, dentry | 0x169da72 | 0x4, directory | d3c975fa1a9b20f6_0 |
| 13 | 0x18e825 | 0x9, dentry | 0x169da6b | 0x4, directory | df7b00085ba675ef_0 |
| 14 | 0x18e825 | 0x9, dentry | 0x18e828 | 0x4, directory | index-dir |
| 15 | 0x18e825 | 0x9, dentry | 0x169da6f | 0x4, directory | f3faf2ae921d9bf5_0 |
| 16 | 0x18e825 | 0x9, dentry | 0x169da71 | 0x4, directory | 41a6c187467c47e1_0 |
| 17 | 0x18e825 | 0x9, dentry | 0x169da6c | 0x4, directory | 9b7fc9e7916c2c7c_0 |
| 18 | 0x18e825 | 0x9, dentry | 0x169da73 | 0x4, directory | a20bc29b43958149_0 |
| 19 | 0x18e825 | 0x9, dentry | 0x169da70 | 0x4, directory | 9bffce5feb2725f3_0 |
| 20 | 0x18e825 | 0x9, dentry | 0x169da67 | 0x4, directory | fd78b4182656630a_0 |
| 21 | 0x18e825 | 0x9, dentry | 0x169da66 | 0x4, directory | fc39fc87aa0a667a_0 |
| 22 | 0x18e825 | 0x9, dentry | 0x169da6a | 0x4, directory | 083f607b0ffe8511_0 |
| 23 | 0x18e825 | 0x9, dentry | 0x169da64 | 0x4, directory | d4e4cca6484c1eb2_0 |
| 24 | 0x18e825 | 0x9, dentry | 0x169da68 | 0x4, directory | c15c8b176db7917c_0 |
| 25 | 0x18e825 | 0x9, dentry | 0x18e827 | 0x4, directory | index |
| 26 | 0x18e825 | 0x9, dentry | 0x169da69 | 0x4, directory | 1b12bbc9cb4a5267_0 |
| 27 | 0x18e825 | 0x9, dentry | 0x169da74 | 0x4, directory | a28d674c00625ded_0 |
+-------+----------+------------------+-------------+----------------+--------------------+
| 28 | 0x18e827 | 0x3, inode |
| 29 | 0x18e827 | 0x4, xattr |
+-------+----------+------------------+
Current path: (1, 30, 17, _)
Choose an entry [.., 0-29]: 13
Record data for entry 13:
METADATA:
- Key size: 31 bytes
- Value size: 18 bytes
- ID and type field: 0x900000000018e825
KEY:
- Virtual OID: 0x18e825
- Object type: Directory entry
VALUE:
- Dentry name length: 19 UTF-8 bytes (including terminating NULL (U+0000) byte)
- Dentry name hash: 0x06afe3
- Dentry name: df7b00085ba675ef_0
- Dentry Virtual OID: 0x169da6b
- Time added: Wed Mar 3 15:17:33 2021
- Dentry type: Regular file
- No. extended fields: 0
Current path: (1, 30, 17, 31)
Choose an entry [..]: