My USB pen drive has a UFS filesystem on it, which contains things like
my ssh and pgp keys, and so on.

Following a (rare) Mac crash last week, the Mac now refuses to mount the
USB pen drive, prompting me to initialise it.

I've tried the drive on a Linux PC, where I can persuade the drive to
mount, and I can retrieve some of the data, but my .gnupg directory in
particular is a mess. Linux UFS support is read only, of course, so I
can't fsck the drive.

I tried the drive on a FreeBSD PC too, which also refused to mount the
drive. From what we could see, the low level partition layout was still
there, and the data was all still there, but the disklabel was missing
from the fourth partition (the one the Mac had initialised). The
FreeBSD machine refused to put a disklabel on the partition.

Anyone got any hints how I might get my data back? I've dd'd the
contents of the drive to a disk file, but I don't much fancy hacking my
way through 64 MB of unfamiliar binary filesystem data in a probably
futile attempt to find my keys!

Now I have to search the loft for the CD I burned the revocation
certificate to about two years ago...