I have been getting errors while trying to set up a VM that syncs files with seafile-cli for a project. I have simplified the steps to reproduce the error a lot from what the actual project is, but hopefully this will help with troubleshooting.
Starting with a new VM with a minimal Debian 13 installation:
- Install AppImage dependencies: apt install fuse libfuse2t64
- Download the latest seafile-cli appImage client (version 9.0.15), from https://s3.eu-central-1.amazonaws.com/download.seadrive.org/Seafile-cli-x86_64-9.0.15.AppImage
- Copy that to /usr/local/bin/seaf-cli.
- Make that executable: chmod +x /usr/local/bin/seaf-cli
- As a normal user, create directory for seafile client’s files: mkdir ~/seafile-client
- Init the client: /usr/local/bin/seaf-cli init -d ~/seafile-client
- Download library: /usr/local/bin/seaf-cli download -l ‘4f94f85a-e9e9-4806-b61d-67b447629aae’ -s https://my.seafile.server.com -d ~/shared -u my_account_email -p the_user_password
This gives a long error:
Starting to download ...
Library 4f94f85a-e9e9-4806-b61d-67b447629aae will be downloaded to /home/user/shared
Traceback (most recent call last):
File "/tmp/.mount_seaf-ccHN2Oi/usr/lib/python3.9/site-packages/pysearpc/named_pipe.py", line 85, in _get_transport
transport = self._pool.get(False)
File "/usr/lib/python3.13/queue.py", line 199, in get
raise Empty
_queue.Empty
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/.mount_seaf-ccHN2Oi/usr/bin/seaf-cli", line 1052, in <module>
main()
~~~~^^
File "/tmp/.mount_seaf-ccHN2Oi/usr/bin/seaf-cli", line 1048, in main
args.func(args)
~~~~~~~~~^^^^^^
File "/tmp/.mount_seaf-ccHN2Oi/usr/bin/seaf-cli", line 601, in seaf_download
seafile_rpc.download(repo,
~~~~~~~~~~~~~~~~~~~~^^^^^^
version,
^^^^^^^^
...<3 lines>...
repo_passwd, magic,
^^^^^^^^^^^^^^^^^^^
email, random_key, enc_version, more_info)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/.mount_seaf-ccHN2Oi/usr/lib/python3.9/site-packages/pysearpc/client.py", line 125, in newfunc
ret_str = self.call_remote_func_sync(fcall_str)
File "/tmp/.mount_seaf-ccHN2Oi/usr/lib/python3.9/site-packages/pysearpc/named_pipe.py", line 97, in call_remote_func_sync
transport = self._get_transport()
File "/tmp/.mount_seaf-ccHN2Oi/usr/lib/python3.9/site-packages/pysearpc/named_pipe.py", line 87, in _get_transport
transport = self._create_transport()
File "/tmp/.mount_seaf-ccHN2Oi/usr/lib/python3.9/site-packages/pysearpc/named_pipe.py", line 80, in _create_transport
transport.connect()
~~~~~~~~~~~~~~~~~^^
File "/tmp/.mount_seaf-ccHN2Oi/usr/lib/python3.9/site-packages/pysearpc/named_pipe.py", line 44, in connect
self.pipe.connect(self.socket_path)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory
This same error also happens with seaf-cli status. I’m not a good python developer, but it looks like some bug is keeping it from making a socket, or named-pipe.
I have a similar VM already set up and working with this same version of seaf-cli. The only differences I can think of between these VMs are:
- The new VM is using a new seafile user I just created
- They are trying to use different libraries (but downloading them the same way, just different UUID, email address, and password in the command line)
- And the old one was already working before I upgraded the server to version 13, and is still working now.
I haven’t messed with the working VM much because I need it to keep working, but I can deploy new VMs for testing pretty easily.