keybase / client

Keybase Go Library, Client, Service, OS X, iOS, Android, Electron
BSD 3-Clause "New" or "Revised" License
8.88k stars 1.23k forks source link

Support multiple sessions on OS X #3867

Open MattiSG opened 8 years ago

MattiSG commented 8 years ago

Same symptoms as #3576:

com.apple.xpc.launchd[1] (keybase.kbfs[9485]): Service exited with abnormal code: 2
com.apple.xpc.launchd[1] (keybase.kbfs): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.

Same reason: /keybase already exists.

Root cause: I had logged in to Keybase on another session. Even if the other session is closed, the folder is left there, and its permissions are drw------- and owner is the creator of it. I thus can't use KBFS on another session, even for the same account.

This is probably not limited to OS X, but I tested it only there. Feel free to edit the name of the issue. I can also do it if I get reports for other OS in comments.

maxtaco commented 8 years ago

Thanks for figuring this out. @gabriel / @cjb we should make a ticket for this one!

gabriel commented 8 years ago

Currently we only support kbfs from a single user account since the /keybase is "global".

We have a change we want to make where when you stop keybase it removes this /keybase placeholder directory, so theoretically you could log out as one user, log in as another user and it would work. This is a simpler fix than supporting 2 users running kbfs at same time on single machine which we can't support at least for a bit.

gabriel commented 8 years ago

Oh sorry re-read the issue description, yeah if it was the same user then there is a problem. If this is macOS sierra it's a known problem, if not, could you do a keybase log send?

MattiSG commented 8 years ago

Same keybase user, different OS user… But there's no way you can know that. Unless you create a OS group with the name of my keybase user prefixed with keybase and set the permissions to ---rw----? 🤔

gabriel commented 8 years ago

Oh it is multiple OS users. We won't be able to support them running at same time but we are working on some fixes so you can change between OS users on same machine... Fix it so exiting keybase doesn't leave a placeholder /keybase directory around.