How to organize a shared storage space
Access to a shared space on the ARC cluster, such as /work/pi_lab
, is controlled by a Unix group.
This is one of the level of Unix permissions controls.
Please read our Wiki article on Linux Permissions (same as Unix).
Regarding the general organization in the shared space, it is a good idea to have personal directories, as well as common read-only and writable spaces.
A lot of responsibility for having good collaboration goes to the users themselves.
The following structure is one of a better ways to approach some generic shared space:
drwxrws--- pi_user pi_lab common drwxr-s--- pi_user pi_lab software drwxr-s--- pi_user pi_lab reference drwxr-s--- user1 pi_lab user1 drwxr-s--- user2 pi_lab user2 ....
Key points about this structure:
- Access to this space is controlled by the
pi_lab
Unix group.
pi_user
is either the groups PI, or somebody from the lab who can do some IT management for the lab.
- There is read only shared access space for software, as well as for reference information that is not going to be changed.
- Then, there is a common space where everyone from your group can write.
- Every lab member directory is only writable by the owner, but readable by every other member of the group.
- Please note that the set-group-ID permission is set on the directories. This is to ensure that the group belonging is properly set on the data inside those directories.
This should work for many cases.
However, the success also depends on every user respecting this pattern of permissions inside their user spaces.
If somebody creates a directory or a file with more restrictive permissions, then other users will not be able to access that data.
It is a power that creates a corresponding responsibility.