SeaDrive3.0.9 多帐号同时登录问题

操作系统:MacOS 14.4.1
硬件:Apple M1 pro
SeaDrive版本:3.0.9 3.0.8 都有问题
描述:不记得哪个版本开始,支持同时登录多个账号,因有两个服务端,所以需要两个账号同时登录,但经常在finder中会出现一个登录,另一个提示 singed out ,点击 sign in 也没有反应的情况,日志提示:FileProviderExtension.m(715): Failed to get account by domain 4fdf311222d9e86d0032c5df67886f36。只有重启电脑,才有机会变为正常(但经常重启也可能会有一个账号没有登录)。不知道如何处理

这个一般是系统问题。建议把账号删除重新登录一下。

帐号重新登录过多次,但还是会出现这样的问题,我现在发现这个是seadrive file provider 进程控制的,如果有两个账号,则会出现两个进程,但实际上只有一个进程可以读取seadrive.sock、seadrive.pid,我怀疑这是seadrive 的bug。

进程1打开的文件:

...
/Applications/SeaDrive.app/Contents/PlugIns/SeaDrive File Provider.appex/Contents/Frameworks/libcrypto.3.dylib
/private/var/folders/yl/7ptx4pmn5dn0h1gf_t53gx9w0000gn/0/com.apple.LaunchServices.dv/com.apple.LaunchServices-5028-v2.csstore
/usr/share/icu/icudt74l.dat
/dev/null
/dev/null
/dev/null
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/logs/seadrive.log
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/data/seadrive.pid
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/logs/events.log
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/data/config.db
count=0, state=0xa
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/data/branch.db
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/data/filelocks.db
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/data/repo.db
/Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/data/ws.db
seadrive.sock
...

进程2打开的文件:

...
/Applications/SeaDrive.app/Contents/PlugIns/SeaDrive File Provider.appex/Contents/Frameworks/libcrypto.3.dylib
/private/var/folders/yl/7ptx4pmn5dn0h1gf_t53gx9w0000gn/0/com.apple.LaunchServices.dv/com.apple.LaunchServices-5028-v2.csstore
/usr/share/icu/icudt74l.dat
/dev/null
/dev/null
/dev/null
/Users//<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/logs/seadrive.log

后台日志:

[05/16/24 17:58:58] start to serve on pipe client

[05/16/24 17:58:58] repo-mgr.c(3561): adding account https://site1xxxxxxx

[05/16/24 17:58:58] repo-mgr.c(3561): adding account http://site2xxxxxxxx

[05/16/24 17:59:14] seadrive.c(491): Failed to lock pidfile /Users/<username>/Library/Containers/com.seafile.seadrive.fprovider/Data/Documents/data/seadrive.pid: Resource temporarily unavailable

[05/16/24 17:59:14] seadrive.c(542): Seadrive is already running.

这个看起来是 14.4 版本的一个突然架构变化。之前的 OS 版本都是只会创建一个 file provider 进程的。这个需要我们升级之后才能解决了,需要几周的时间。

期待新版本,谢谢