Seafile#
General#
- Check version with https://www.inetone.de:444/api2/server-info/
- Stop: cd $SF ./seahub.sh stop + ./seafile.sh stop
- Start: ./seafile.sh start + ./seahub.sh start
- Restart: ./seafile.sh restart + ./seahub.sh restart
- Log: /markus/seafile/logs seafdav.log + seafile.log + seahub.log
Error "[WARNING] django.security.csrf:228 log_response Forbidden (CSRF cookie not set.): /"#
at /markus/seafile/logs/seahub.logvi /markus/seafile/seafile-server-latest/seahub/seahub/settings.py
SITE_ROOT_URLCONF = 'seahub.urls' ROOT_URLCONF = 'seahub.utils.rooturl' # ME, 01.09.2021 changed #SITE_ROOT = '/' SITE_ROOT = '/markus/seafile/seafile-server-latest/' <===
Minor upgrade 8.3 > 8.4#
1. Download server version into /markus/seafile, gunzip, untar2. Then you have another folder "seafile-server-8.0.4"
3. stop, cd <new folder>
4. ./upgrade/minor-upgrade.sh
5. start
WebDav#
base URL = https://www.inetone.de:444/seafdavWebDav: error HTTP MOVE 502 Bad Gateway#
check seafdav.logFixed according to forum

RequestHeader edit Destination ^https: http:
Migrate from 7.1.5 to 8.0.3
#
- Check version, Stop
- Download
, gunzip *, tar xvf *
- extract and copy, run script (start upgrade scripts from base folder, not inside upgrade folder!
cp seafile-server-8.0.3 /markus/seafile cd /markus/seafile/seafile-server-8.0.3 ./upgrade/upgrade_7.1_8.0.sh4. Start
Config (17.02.2021)#
See Seafile admin manualConfig Seahub with Apache at "Modify ccnet.conf and seahub_setting.py"
Seafile > WebInterface > Avatar-Icon > Steam Administration > Settings
SERVICE_URL = https://www.inetone.de:444 FILE_SERVER_ROOT = https://www.inetone.de:444/seafhttp
Though the docu tells "if you set the value both via Web UI and config file, the setting via Web UI will take precedence", I edited the config files, too:
vi .../conf/seahub_settings.py
# add following FILE_SERVER_ROOT = 'https://www.inetone.de:444/seafhttp'vi .../conf/ccnet.conf
# change SERVICE_URL = https://www.inetone.de:444
Note: When you change service URLs clean your browser cache or hard reload each page !
It takes a some seconds until the new settings come into effect even if the seafile has started already, so keep reloading in case!
For Apache there is a proxy config.
vi /etc/apache2/sites-available/000-default-le-ssl.conf
<VirtualHost www.inetone.de:444> ServerName www.inetone.de ServerAlias inetone.de DocumentRoot /var/www ErrorLog ${APACHE_LOG_DIR}/seafile_443.log Alias /media /markus/seafile/seafile-server-latest/seahub/media RewriteEngine On <Location /media> Require all granted </Location> # # seafile fileserver # ProxyPass /seafhttp http://127.0.0.1:8082 ProxyPassReverse /seafhttp http://127.0.0.1:8082 RewriteRule ^/seafhttp - [QSA,L] # # seahub # SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 ProxyPreserveHost On ProxyPass / http://127.0.0.1:8000/ ProxyPassReverse / http://127.0.0.1:8000/ Include /etc/letsencrypt/options-ssl-apache.conf SSLCertificateFile /etc/letsencrypt/live/www.inetone.de/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/www.inetone.de/privkey.pem </VirtualHost>On Errors check Seafile FAQ

New Installation on Debian (27.12.2020)#
Download
cd /markus/seafile wget ...copy link... tar xvf * (this will create sub folder like seafile-server-7.0.5) cd seafile-server-7.0.5Note: symlink seafile-server-latest is created automatically from the script.
Manual for deploying with MySQL

Clean up databases?
mysql -u <user> -p DROP DATABASE `ccnet-db`; DROP DATABASE `seafile-db`; DROP DATABASE `seahub-db`;
Note: Seafile 7.1.x will NOT work with Debian 9 because some required packages are not available there.
You will find error django.request:135 handle_uncaught_exception Internal Server Error at seafileHome\logs\seahub.log !
# on Debian 10/Ubuntu 18.04 apt-get update apt-get install python3 python3-setuptools python3-pip -y pip3 install --timeout=3600 Pillow pylibmc captcha jinja2 sqlalchemy \ django-pylibmc django-simple-captcha python3-ldap
./setup-seafile-mysql.sh#
Checking python on this machine ... ----------------------------------------------------------------- This script will guide you to setup your seafile server using MySQL. Make sure you have read seafile server manual at https://download.seafile.com/published/seafile-manual/home.md Press ENTER to continue ----------------------------------------------------------------- What is the name of the server? It will be displayed on the client. 3 - 15 letters or digits [ server name ] inetone What is the ip or domain of the server? For example: www.mycompany.com, 192.168.1.101 [ This server's ip or domain ] 185.244.195.4 Which port do you want to use for the seafile fileserver? [ default "8082" ] ------------------------------------------------------- Please choose a way to initialize seafile databases: ------------------------------------------------------- [1] Create new ccnet/seafile/seahub databases [2] Use existing ccnet/seafile/seahub databases [ 1 or 2 ] 1 What is the host of mysql server? [ default "localhost" ] What is the port of mysql server? [ default "3306" ] What is the password of the mysql root user? [ root password ] verifying password of user root ... done Enter the name for mysql user of seafile. It would be created if not exists. [ default "seafile" ] Enter the password for mysql user "seafile": [ password for seafile ] verifying password of user seafile ... done Enter the database name for ccnet-server: [ default "ccnet-db" ] Enter the database name for seafile-server: [ default "seafile-db" ] Enter the database name for seahub: [ default "seahub-db" ] --------------------------------- This is your configuration --------------------------------- server name: inetone server ip/domain: 185.244.195.4 seafile data dir: /markus/seafile/seafile-data fileserver port: 8082 database: create new ccnet database: ccnet-db seafile database: seafile-db seahub database: seahub-db database user: seafile --------------------------------- Press ENTER to continue, or Ctrl-C to abort --------------------------------- Generating ccnet configuration ... done Successly create configuration dir /markus/seafile/ccnet. Generating seafile configuration ... Done. done Generating seahub configuration ... ---------------------------------------- Now creating ccnet database tables ... ---------------------------------------- ---------------------------------------- Now creating seafile database tables ... ---------------------------------------- ---------------------------------------- Now creating seahub database tables ... ---------------------------------------- creating seafile-server-latest symbolic link ... done ----------------------------------------------------------------- Your seafile server configuration has been finished successfully. ----------------------------------------------------------------- run seafile server: ./seafile.sh { start | stop | restart } run seahub server: ./seahub.sh { start <port> | stop | restart <port> } ----------------------------------------------------------------- If you are behind a firewall, remember to allow input/output of these tcp ports: ----------------------------------------------------------------- port of seafile fileserver: 8082 port of seahub: 8000 When problems occur, Refer to https://download.seafile.com/published/seafile-manual/home.md for information.
/markus/seafile/seafile-server-latest/seafile.sh restart /markus/seafile/seafile-server-latest/seahub.sh restart
Logs at /markus/seafile/logs
vi /markus/seafile/logs/seahub.log django.request:135 handle_uncaught_exception Internal Server Error
Initial Installation (2018)#
After reading positive comments I installed seafile to my Linux root server1. Info Server
> cat /proc/version Linux version 4.4.0-66-generic (buildd@lgw01-28) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4) ) #87-Ubuntu SMP Fri Mar 3 15:29:05 UTC 2017 > lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.04.2 LTS Release: 16.04 Codename: xenial > getconf LONG_BIT 64 > uname -m x86_64 > file /bin/bash /bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=0428e4834e687e231fa865562d32fbb64ce45577, stripped
2. Download
Server for generic Linux 64bit
wget https://bintray.com/artifact/download/seafile-org/seafile/seafile-server_6.0.8_x86-64.tar.gz gunzip * tar xvf *
3. See Manual
For installing and setup see "Deploying with MySQL"
4. Start/Stop Folder "seafile-server-latest" (>4.0.2)
./seafile.sh start # Start seafile service ./seahub.sh start # Start seahub website, port defaults to 8000 ./seahub.sh stop ./seafile.sh stop
Problem Android "Unknown Server Status"#
This seems to be a device ID problem in the source code.
See ./seafile-server-latest/seahub/seahub/api2/serializers.py
Upgrade#
on 12.01.2017 from 4.05. to 6.0.7, see manual
1. cd /markus/seafile
2. stop old one
3. here you download the lastest server version
Note: you have here als folder ccnet and seafile-data
After gunzip and tar you have a new folder seafile-server-6.0.7
4. cd seafile-server-6.0.7
5. ls -l upgrade
Here you need to call all steps, e.g.
upgrade_4.0_4.1.sh
upgrade_4.1_4.2.sh
...
But NOT from inside folder, but one above, so
upgrade/upgrade_4.0_4.1.sh
upgrade/upgrade_4.1_4.2.sh
...
6. All upgrade set a new symlink to seafile-server-6.0.7
7. cd seafile-server-6.0.7
8. start like above, done
Migrate to new server#
- Stop services
- Download and install latest version (as of Mar 2017 it was 6.0.8), follow manual
- create mysql databases create database ccnet-db default character set 'UTF8'; create database seafile-db default character set 'UTF8'; create database seahub-db default character set 'UTF8';
- create mysql seafile user create user 'seafile'@'localhost' identified by 'seafile'; GRANT ALL PRIVILEGES ON `ccnet-db`.* to `seafile`@localhost; GRANT ALL PRIVILEGES ON `seafile-db`.* to `seafile`@localhost; GRANT ALL PRIVILEGES ON `seahub-db`.* to `seafile`@localhost; SET PASSWORD FOR 'seafile'@'localhost' = PASSWORD('...your.password...');
- clean and copy folders ccnet, conf, seafile-data
- maybe: update SERVER_URL in /conf/ccnet.conf
- old versions of seafile used folder "data" and not "seafile-data" as data storage, update folder in /ccnet/seafile.ini
- export, copy, import database mysqldump -u root -p<password> ccnet-db > /home/proftpd/ccnet-db.sql mysqldump -u root -p<password> seafile-db > /home/proftpd/seafile-db.sql mysqldump -u root -p<password> seahub-db > /home/proftpd/seahub-db.sql mysql -u root -p<password> ccnet-db < /home/proftpd/ccnet-db.sql mysql -u root -p<password> seafile-db < /home/proftpd/seafile-db.sql mysql -u root -p<password> seahub-db < /home/proftpd/seahub-db.sql
- Delete cache rm -rf /tmp/seahub_cache
- Update mysql config
in /conf/seahub_settings.py to 'init_command': 'SET default_storage_engine=INNODB',
- Start services