Seafile Server 7.1.4 for Raspberry Pi is ready! 23.05.2020

in /conf/seahub_settings.py

Internal server error after upgrade to version 7.1

Please check whether the seahub process is running in your server. If it is running, there should be an error log in seahub.log for internal server error.

If seahub process is not running, you can modify conf/gunicorn.conf, change daemon = True to daemon = False , then run ./seahub.sh again. If there are missing Python dependencies, the error will be reported in the terminal.

The most common issue is that you use an old memcache configuration that depends on python-memcache. The new way is

'BACKEND': 'django_pylibmc.memcached.PyLibMCCache'


The old way is

'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',

you didnt realize that there is no symlink inside /home/pi/SeaFile/seafile-server-7.1.4/seafile/lib, did you?

Thank you for your very fast answer and sorry for writing to fast in this forum, because I see that with my Debian Stretch has Python 3.5.3 installed momentary. I now use this article https://linuxize.com/post/how-to-install-python-3-7-on-debian-9/ that is linked to your description above and will let you know about the outcome.

My suggestion is to use pyenv https://github.com/pyenv/pyenv

It is very straightforward. It will compile the python automatically. Use Python 3.6.10

Ah f*** it’s already doing “make -j 2” did you think it’s better to cancel before doing the make (alt)install and use the pyenv instead?

And now i got next problem, Error:Seahub failed to start…
Could it be that my python (on armbian stretch) is too old? (python3 -V says Python 3.5.3) ?

sure cancel it, and don’t worry. The compilation process will long about almost 4 hours with a raspberry pi 3b+ with the enabled-optimizations flag

Seems you have the same error like me (I use also an Debian Stretch but on a Cubietruck). We have to install like @jobenvil has suggested Python 3.6.10

@nihilistaX :cold_face: yes, i told you, please here:

FOR ALL OTHERS COMMING AFTER:

STRETCH USERS NEEDS EITHER TO UPGRADE THE OS TO BUSTER OR take the rpi-Stretch version AND INSTALL ADDITIONALLY PYTHON 3.6.10 :pray: :pray: :pray:

1 Like

OK, sorry for that, its hard work to collect all needed things and forget nothing :grin:

Hello,
You are true, I created the symbolic link in the wrong place. I just correct it and… the issue is still here.

ls -la /home/pi/SeaFile/seafile-server-7.1.4/seafile/lib give me :

(...)
lrwxrwxrwx 1 seafile nogroup 9 mai 24 02:44 python3.6 -> python3.7
(...)

Great! Thank you very much :wink:

After start seahub, I have this message :
File “/home/seafile/seafile-server-7.1.4/check_init_admin.py”, line 284, in init
seahub.sh[29214]: import ccnet
seahub.sh[29214]: ModuleNotFoundError: No module named ‘ccnet’
what’s going on ?

@jobenvil, the python modules for seafdav seem missing.
They are listed on github seafdav/requirements.txt.

Did you check all above?
I had this error, too, but i had to read much and upgrade my device to buster for newer python version (did you check yours?), set the python3.6 link and so on… i think you missed something.
And @jobenvil : Great work, all working good if step by step doing what you recommended above. :+1:
Bit tricky as a python-noob and i did buster upgrade instead of fiddling with python…but after several hours of work i get all working again, btw… :sweat_smile:

All we suffered with the Python3 stuff, not only you. :wink: but now, you are save until Python4 :laughing:

The following updates will be like the old good days. Don’t worry.

@axstet unless you want to install outdated packages I recommend you don’t do it. The mandatory dependences are already documented on the manual, like jinja2, sqlalchemy:

pip3 install --timeout=3600 Pillow pylibmc captcha jinja2 sqlalchemy \    django-pylibmc django-simple-captcha python3-ldap

Others like PyYAML are optional and in fact, we don’t use it at all, since we don’t work at all with a yaml config file.

BUT, I realized that for lxml package, even if it is optional requirement, you will get follow WARNING, while starting SeafDAV:

2020-04-22 20:18:12.276 - <-1225219248> wsgidav WARNING : Could not import lxml: using xml instead (up to 10% slower)

And we don’t want be in any case 10% slower using WebDAV, do we? Absolutly not :muscle:

The point is that lxml depends on other dev libraries (libxml2-dev libxslt-dev ) to be compiled and they cause many MBs more for the rpi-packages. Anyhow, I put them on the rpi packages.

Either you can download the new packages or do it yourself. I recommend to avoid pip if these packages are for your OS available. Try:

sudo apt-get install libxml2-dev libxslt-dev

and then sudo apt install python3-lxml python3-jsmin python3-defusedxml python3-pam

These will install your native libraries from your OS and the adventage, they will get updated every time with your OS and not manually by using pip

Thanks for reporting.

Did you get any errors when you try to run seahub.sh? You must go to the $INSTALLDIR/seafile/lib/ and then execute ln -s python3.7 python3.6 so that you get a symlink in the library directory
blablub@hostname:/mnt/daten/seafile/seafile-server-7.1.4/seafile/lib# ls -ald python*
lrwxrwxrwx 1 root root 9 Mai 24 16:44 python3.6 -> python3.7
drwxr-xr-x 3 seafile seafile 4096 Mai 21 17:58 python3.7

Same for you herve:

You must go to the "$INSTALLDIR/seafile/lib/" and then execute "ln -s python3.7 python3.6" so that you get a symlink in the library directory

Hey, thank you very much for all the great work here!!
But regarding the specific points you made here, I have to disagree: on my installation, SeafDAV did only start after installing jsmin, defusedxml and pyyaml via pip. Otherwise, it failed when trying to import these modules.