Output from 12.1-BETA1:
# fstyp /dev/md0
fstyp: /dev/md0: filesystem not recognized
ZFS is not detected. Either imported or exported.
This is quick and easy way to detect ZFS on a block device:
# head -c 32000 /dev/md0 | strings | grep -q pool_guid
Dunno how that may help with fstyp(8) written in C but ... :)
Excerpt from the fstyp(8) man page:
When the -u flag is specified, fstyp also recognizes
certain additional metadata formats that cannot be handled using
mount(8), such as geli(8) providers, and ZFS pools.
So the following should work for you:
# fstyp /dev/ada0p3
fstyp: /dev/ada0p3: filesystem not recognized
# fstyp -u /dev/ada0p3
# fstyp -lu /dev/ada0p3
Oh, I found -u flag ... but is that 'fread: Invalid argument' a bug?
# fstyp -u /dev/ada0p3.eli
fstyp: fread: Invalid argument
(In reply to vermaden from comment #2)
Yes, there is a bug in that handlers for several FS types assume they can read a 512 byte block, but your GELI disk probably has a block size >= 4096. The errors come from those reads. I suspect this means that they will not work properly on 4Kn drives either.