Brad Fitzpatrick (brad) wrote,
Brad Fitzpatrick
brad

today's rage #2: NFS "nohide" export option

Second frustrating item of the day:

$ man 5 exports
....
nohide
This option is based on the option of the same name provided in IRIX
NFS.  Normally, if a server exports two filesystems one of which is
mounted on the other, then the client will have to mount both
filesystems explicitly to get access to them.  If it just mounts the
parent, it will see an empty directory at the place where the other
filesystem is mounted.  That filesystem is "hidden".

Setting the nohide option on a filesystem causes it not to be hidden,
and an appropri- ately authorised client will be able to move from the
parent to that filesystem without noticing the change.

However, some NFS clients do not cope well with this situation as, for
instance, it is then possible for two files in the one apparent
filesystem to have the same inode number.

The nohide option is currently only effective on single host exports.
It does not work reliably with netgroup, subnet, or wildcard exports.

This option can be very useful in some situations, but it should be
used with due care, and only after confirming that the client system
copes with the situation effectively.

The option can be explicitly disabled with hide.

Why can't it work with a wildcard? :-(

Instead, I tried the ultra-ghetto solution of remounting the nohidden merged filesystem locally (explictly exporting all the filesystems back to 127.0.0.1), and then reexporting that merged mount.... no go. But I'm kinda glad, as that'd be ugly.

So instead do I need each web node to mount every disk? Lame. I'd prefer one per host. I suppose the mounting will be automated anyway (go whitaker!) but I'd rather each web node have 1 mount per storage server rather than 14. (14 logical devices per storage node)

Alternatively, I can have d*w exports per storage node (d == disks, w == webnodes), but that's lame too.

Is there some way to create a merged filesystem (yet with 14 distinct filesystems backing it) which I can then export, without having to futz with nohide?
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 17 comments