To get around this limitation, you need to compile Pydio Cells from source.
You must edit a file named “mountinfo_linux.go”.
mkdir -p /home/pydio
cd /home/pydio
git clone -b stable https://github.com/pydio/cells
cd cells
git clone https://github.com/pydio/minio
Edit the file /home/pydio/cells/go.mod
Go to last line, locate
replace github.com/minio/minio => github.com/pydio/minio v0.0.0-20230301104210-859d91c9822e
Replace it with
replace github.com/minio/minio => /home/pydio/cells/minio
Edit the file /home/pydio/cells/minio/pkg/mountinfo/mountinfo_linux.go
Go to line ~107, locate:
msg := `Cross-device mounts detected on path (%s) at following locations %s. Export path should not have any sub-mounts, refusing to start.`
if len(crossMounts) > 0 {
// if paths didn't match then we do have cross-device mount.
return fmt.Errorf(msg, path, crossMounts)
}
Replace it with
//msg := `Cross-device mounts detected on path (%s) at following locations %s. Export path should not have any sub-mounts, refusing to start.`
if len(crossMounts) > 0 {
// if paths didn't match then we do have cross-device mount.
fmt.Printf("Cross-device mounts detected on path (%s) at following locations %s.\n", path, crossMounts)
fmt.Println("Export path should not have any sub-mounts, refusing to start.")
//return fmt.Errorf(msg, path, crossMounts)
}
Finally, run
make && cp -p cells /opt/pydio/bin