ZFS file storage info

Ivan Voras ivoras at freebsd.org
Sat Feb 13 01:54:16 UTC 2010


Clear as mud, but I'll try to understand it...


>
>     Object  lvl   iblk   dblk  lsize  asize  type
>       6987    2    16K   128K   384K   388K  ZFS plain file
>                                  264  bonus  ZFS znode
> path /bin/ex
> uid     0
> gid     0
> atime Sat Feb 13 07:37:52 2010
> mtime Sat Nov 21 14:31:07 2009
> ctime Fri Feb 12 05:52:32 2010
> crtime Fri Feb 12 05:52:32 2010
> gen 145

I assume "gen" is the file generation, e.g. number of write
transactions to the file? (irrelevant, just curious about it; I have a
database file with gen=10002980).

> mode 100555
> size 337136
> parent 4
> links 6
> xattr 0
> rdev 0x0000000000000000
> Indirect blocks:
>                0 L1  0:10bef000:c00 4000L/400P F=3 B=145
>                0  L0 0:10bf0000:30000 20000L/20000P F=1 B=145
>            20000  L0 0:10c30000:30000 20000L/20000P F=1 B=145
>            40000  L0 0:10c70000:30000 20000L/20000P F=1 B=145
> segment [0000000000000000, 0000000000060000) size  384K


> You're interested in the "Indirect blocks" portion. Google raidzmap.tar.gz,
> download and build it, then do the following. Note that you'll drop the
> third portion of the zfs offset tuple (e.g. the "c00" in 0:10bef000:c00) and

For start, what information is there in the "zfs offset tuple"? I
guess the first number is probably the pool id/index?

> use the physical size (the hex number next to the "P" in "400P"). The devidx

Can you give some information about each of the columns in the output
above? I.e. in the line

"0 L1  0:10bef000:c00 4000L/400P F=3 B=145"

What are the fields' meanings? I tried to deduce that the first column
looks like an offset within its "L" level, but this breaks down on my
file example which has multiple "L1" records. I have no idea about the
"F" and "B" fields.


More information about the freebsd-fs mailing list