Post by Jorge Gea
We are facing a tricky problem with zfs-fuse library.
The whole story is we need to get zfs file system working over
fuse and share this system over nfs properly, without the ESTALE
known problems. To do so, we need to apply the many times commented
parameters "use_ino,noforget" to fuse mount options.
I don't know where you have read this, but probably not on a zfs-fuse list !
The only known problem with nfs is when exporting a zfs-fuse pool which
contains sub filesystems in it, they must be exported separately using the
fsid option, which is handled automatically if you use the "zfs sharenfs"
command. If you prefer to do it with the exports file instead be sure to
set the fsid parameter correctly where needed.
With this I never got any ESTALE error, now I must say that I use nfs share
only to be able to read files remotely, not to write them, but this error
is not specific to write operations normally.
Moreover, the option you are giving "no_ino" and "noforget" are specific to
fuse high level api, it will be refused by the low level fuse api used by
zfs-fuse. You can see that by editing your /etc/zfs/zfsrc, changing the
fuse options like that :
fuse-mount-options = default_permissions,nonempty,use_ino,noforget
Then run the daemon manually : sudo zfs-fuse -n
and then in another window : sudo zfs mount -a
you'll get the error about no_ino first in the daemon window, and then
about "noforget" if you remove "no_ino". Neither of these options can be
fuse: unknown option `use_ino'
fuse: unknown option `noforget'
Now I just tested this, and I confirm you shouldn't get any crash because
of this, so there is probably something very wrong on your system, maybe
the running kernel (but fuse 2.9.x is supposed to be backwards compatible
with everything until at least 2.6.9 !). No idea what it is, check syslog,
but it just writes an error on stdout here. Ok, I don't use the official
0.7.0 neither, but I don't think there is any difference at this level, see
the url of my git repo in my signature if you want.
(tested with debian libfuse 2.9.0 and kernel 3.5.3).
Anyway to sum up : you don't need any specific option for fuse for nfs,
then you need either to use zfs sharenfs or manually set the fsid parameter
in the exports file, that's all.
To post to this group, send email to email@example.com
To visit our Web site, click on http://zfs-fuse.net/