How to configure file sharing?

We are using cern webui 1.0.8 with a vanilla reva and the cephfs module. Our configuration is here: reva-configs/u-paris-saclay at main · cs3org/reva-configs · GitHub

How can we enable file sharing between users in the webui?

Thanks in advance for you answers,

–
Nicolas

Hello Nicolas, and thanks for posting!

(Sorry for the late response, I still have to configure more timely notifications from the forum…)

For sharing, there’s nothing specific to configure as it comes from the storage: with CephFS and the cephmount Reva driver, if you own a folder, you should be able to share it. The configuration though does not seem up to date, I know you’re using cephmount: could you please update it and then we can debug the case?

Cheers,
Giuseppe

Hey, sorry to be late to answer, I wanted to check about our conf with my colleagues but it seems they’re not quite available lately.

I’m sorry I don’t understand, from a config point of view the driver we use is named cephfs, is it the same than cephmount or is it another one?

If not should I use cephmount instead of cephfs?

Thanks in advance for your answers,

–
Nicolas

No problem. The cephmount driver is a different one, which we had to implement precisely to support sharing (the cephfs driver did not support ACLs).

But I had the impression you migrated to cephmount already, when discussing with Michel…

By the way, @rwelande and I are testing it as we speak, specifically for the sharing part. Hopefully we can give you some updates soon!

Cheers,
Giuseppe

Ok, I need to check with Michel. Anyway, I can also try it, but I don’t see any examples with cephmount in cs3org/reva-configs, where can I learn how to configure it?

Thank you,

–

Nicolas

Right, now it’s there: reva-configs/cern-prod/revad-cephmount.toml at main · cs3org/reva-configs · GitHub

1 Like

Thank you! We have a working cephmount driver now. I’m very happy, because it fixes nicely the recursive deletion of directories. I’ll try to update our conf files next week and see the sharing parts.

I have made a pull request upsaclay configuration updated by nlegrand · Pull Request #4 · cs3org/reva-configs · GitHub with our conf updated with cephmount.

Anyhow, I don’t see a share link like in a classical owncloud interface. Is there an option to activate it?

I’ve merged the PR, thanks for that. And for the sharing, I think we understand it now, and it’s something to be fixed in the code. A fix was merged only very recently, could you maybe try and build from master now?

Thank you! I’ve build from master, but the daemon fails to start:

Mar 9 11:40:45 ijc-rgw1 revad[814176]: {“level”:“fatal”,“pid”:814176,“time”:“2026-03-09T11:40:45.984166862+01:00”,“caller”:“/var/kits/reva/src/cmd/revad/main.go:322”,“message”:“error creating reva runtime: rgrpc: grpc service storageprovider could not be started: cephmount: failed to create chroot jail with os.OpenRoot: open /cephfs/cephfs: no such file or directory”}

Hi Nicolas,

What is in your fstab? I think this may be a configuration issue, the root_dir is appended to whatever mount is in the fstab, consider this:

you mount /mnt/cephfs(specified by the fstab)

if you put root_dir = "cephfs" in Reva the full path is now /mnt/cephfs/cephfs/, is it possible you have mixed this up somehow?

Rasmus

Thank you for your answer, indeed, I let the root_dir blank and I don’t have this error any more.

In place, I have this one:

Mar 9 15:10:08 ijc-rgw1 revad[923573]: {“level”:“error”,“pid”:923573,“pkg”:“grpc”,“service”:“storageprovider”,“error”:“cephfs: ret=-1, Operation not permitted”,“time”:“2026-03-09T15:10:08.260807677+01:00”,“caller”:“/var/kits/reva/src/pkg/storage/fs/cephmount/pathbyid_ceph.go:132”,“message”:“failed to mount ceph filesystem at default root”}
Mar 9 15:10:08 ijc-rgw1 revad[923573]: {“level”:“warn”,“pid”:923573,“pkg”:“grpc”,“service”:“storageprovider”,“error”:“cephfs: ret=-1, Operation not permitted”,“time”:“2026-03-09T15:10:08.262713503+01:00”,“caller”:“/var/kits/reva/src/pkg/storage/fs/cephmount/cephmount.go:179”,“message”:“cephmount: failed to create ceph admin connection, GetPathByID will not work”}

And a panic :

Mar 9 15:10:08 ijc-rgw1 revad[923573]: panic: runtime error: invalid memory address or nil pointer dereference

And the daemon fails to load. It works ok with 3.5.1 curiously.

Now I still have something fishy in my conf. In fstab I have:

cernbox@.cernbox=/ /cephfs ceph rbytes

Revad refuse to launch if I use this line. So I put something nearer of the mount command result:

ip:port,ip:port:/ /cephfs ceph rw,relatime,seclabel,name=x,secretfile=/etc/ceph/ceph.client.x.secret,fsid=<some_id>,rbytes,acl,mds_namespace=x 0 0

To be sure, I changed my fstab with the later and mount is working. But it yields the same error from revad.

Hi Nicolas,

In short, the key you are using for the mount doesn’t have sufficient permissions.

For sharing to work the driver needs sufficient permissions to perform the fs dump and dump inode commands. This is because Reva uses the inode to keep track of shares, and we have to be able to look up the path from the inode in case it has changed (file has been moved for example).

This error you are getting cephmount: failed to create ceph admin connection, GetPathByID will not work means that the key you are using doesn’t have sufficient permissions to create the admin connection that should be used for these commands.

Thank you for your answer! Here are our key authorisations:

$ sudo ceph auth get client.cernbox
[client.cernbox]
key = XXXXXX
caps mds = “allow rwp fsname=cernbox”
caps mon = “allow r fsname=cernbox”
caps osd = “allow rw tag cephfs data=cernbox”

What do we need?

Do you have any idea?