Project Sharing can be a great way to collaborate on RStudio Projects and R files, making it easy to manage permissions and enable collaboration. However, it does require some specific settings to be in place on your server before it will work correctly.
In general, we’d recommend checking out the Project Sharing section in the Posit (formerly RStudio) Workbench (or RStudio Server Pro) Admin Guide here.
Note: Posit is limited in the support we can provide to enable ACLs, so you may wish to consult with your system administrators for assistance in getting this set up. That said, the following information may be helpful for troubleshooting any issues you run into.
Prerequisites
To use Project Sharing, the directories hosting the projects to be shared must be on a volume that supports POSIX Access Control Lists (ACLs). Posit Workbench uses ACLs to grant collaborators access to shared projects; ordinary file permissions are not modified.
Instructions for enabling ACLs vary by Linux distribution and filesystem type (see the Guide to enabling ACLs on Ubuntu or RedHat, for example). Broadly, you will need to ensure that the filesystem is mounted with the user_xattr
and acl
attributes, and modify /etc/fstab
if necessary to persist the attributes.
Note that many Linux distributions now have ACLs enabled by default in which case no special configuration is required. You can use the tune2fs
command to inspect the attributes with which your filesystem is mounted, for instance:
sudo tune2fs -l /dev/sda1
You should see user_xattr
and acl
under “Default mount options” - if not, you need to make sure that your filesystem supports ACLs and that it has been correctly mounted.
You also need to ensure that your users who will be sharing projects have the ability to create ACLs on those locations. You can test this with the setfacl
command:
setfacl -m u:username:x /home/user/project1
running this command as the user and using the location of a directory you might wish to share.
Using Project Sharing with NFS
If you are using Project Sharing with NFS, it’s important to note that you need ACL support all the way down the stack - the NFS filesystem must be mounted with ACL support on the client, and the NFS server’s underlying filesystem must have ACL support. You can check the status of your NFS server via the nfsstat
utility:
sudo nfsstat -m
If you are using NFSv4, you must tell Workbench the NFSv4 domain you want to use. See here for more.
Using Project Sharing with a proxy
If you are running Workbench with a proxy, you'll need to make sure that your proxy is correctly configured to pass websocket connections through in order for collaborative editing and other features to work. See Running Workbench with a Proxy for more on this.
Comments