Fixing Seafile

2021/01/30 by Paulo Pereira

~/categories/Linux #Linux #Arch Linux #Seafile

Yesterday I woke up without access to my Seafile instance.

Here’s my notes/steps/fixes for the issue.

Restart Seafile and check for errors:

sudo systemctl restart seafile
sudo systemctl status seafile
sudo systemctl restart seahub
sudo systemctl status seahub

No errors here.

Check Seafile logs:

sudo -u seafile -s /bin/sh
cd /srv/seafile/logs

I found the following in elasticsearch.log:

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

Maybe this is the problem? Some searching in seafile forum, and I found this.

I then tried to updating outdated python packages, rebuild elasticsearch index and changed the max_map_count value:

sudo systemctl stop seahub
sudo systemctl stop seafile

sudo pip list --outdated
sudo pip3 install -U --timeout=3600 chardet Django feedparser idna jaraco.classes josepy mock Pillow pip urllib3

cd /srv/seafile/seafile-server-latest
pro/pro.py search --clear
pro/pro.py search --update

sudo sysctl -w vm.max_map_count=262144

Rebooted, but still no Seafile. The elasticsearch “too low” warning disappeared though.

Then I thought. What about apache?

sudo systemctl status httpd

Yep. This is the problem. I had updated php to version 8, and had models loaded for php7 in httpd.conf. Just replaced php7 to php, restarted apache and Seafile is back.

sudo vi /etc/httpd/conf/httpd.conf
sudo systemctl restart httpd
sudo systemctl status httpd