Mutil-user configuration proposal

client-development

#1

I have seen previous posts about a PC with multiple user accounts. I think there should be a owncloud client mode (or maybe a different package) that allows multiple instances of owncloud to be running at once. For example, I use different LTSP logins to a LTSP server. It would be good if this could be allowed. To prevent two instances of owncloud accessing the same file, you could use two strategies, either the administrator takes the responsibility or only subfolders of a user's home folder (no symlinks or hardlinks) may be registered for any user.

A different strategy would be to have an owncloud manager service running as an unprivileged user and have user agents communicate changed files to it. The service then respond with an PROCEED, IGNORE or DELAY a request from another desktop agent. Once the sync is completed / failed, the agent notifies the service. For example:
1) No other agent has asked to upload / download a changed file - service responds with PROCEED
2) Another agent uploaded / downloaded a change to the file in question already and checksum is the same as the previous, so the change has been applied and the server replies with IGNORE
3) Another agent started an upload / download of a change but has not notified a complete or fail. So the server responds with a DELAY and the agent takes the reponsibility to retry the operation some time later.

A service like this would only need to keep a list of recent changes with current checksums. There could be a timeout (for arguments sake, lets say 5 minutes). If a change was applied successfully and the timeout expired without any other agent wanting to upload / download a change to that file, the entry may be dropped from the service cache.