• Leigh B. Stoller's avatar
    Another set of group changes. As discussed in email and meetings, · 8404af03
    Leigh B. Stoller authored
    group directories are now created in a different tree than the
    the project directory so that they can be exported independently of
    the project tree to the nodes in a group experiment. The tree is
    routed at /groups on boss/users and on nodes.
    1. mkgroup,rmgroup,mkproj - Minor changes to reflect new group
       directory location (/groups). We leave a symlink in the old spot to
       maintain compatability, and to reduce the number of different
       directories that a person needs to worry about. So, when a group is
       made, you get a real directory /groups/pid/gid, and a symlink
       /proj/pid/groups/gid that points to the former.
    2. tmcd/tmcd.c - Minor change to add the additional group directory mount
       in the mounts command. Only done when pid!=gid for the experiment.
    3. tmcd/libsetup.pm and friends - Minor changes to fix the fact that
       mkdir does not create subdirs along the way unless the -p option is
       specified. Needed to create the local directory for the mounts
       returned by tmcd for group dirs. Pushed them out to the sup trees,
       although 6.2 images older than the most recent one are not going to
       work right. No one is using those images though, and we should just
       flush the sup trees.
    4. exports_setup.in - Ah, the crux of the issue. I really dislike NFS
       at this point. The original idea was to export a third set of
       directories to nodes that were part of a group experiment. Those
       nodes would get /groups/pid/gid exported, and /proj/pid read-only.
       Well, no such luck. On users, /groups and /proj are both really on
       /q, and the old restriction of mountd not allowing an IP to
       specified more than once on the right hand side for any FS, reared
       its ugly head again. As far as mountd is concerned, /q/groups and
       /q/proj are the same thing, and so it bombed when I tried to export
       them on different lines, since that meant an IP was repeated twice.
       So, I reworked exports_setup, and now for any node that is part of
       a group experiment, it gets this:
    	/q/proj/pid /q/groups/pid/gid -maproot=root
       which at least allows the individual group dirs to be protected
       from each other, but does not allow /proj/pid to be exported read
       only. Sigh.
rmgroup.in 3.49 KB