How to Install Seafile cloud storage in Ubuntu 14.04 server

Seafile cloud storage

1. Introduction

Seafile is a free and open source cloud storage software system. It acts as a central server for storing files and synchronize the data with multiple computers and mobile devices using the seafile client. It allows users to assemble files into libraries and these libraries can be shared among the users as well as groups. Also it provides advanced support for privacy protection and teamwork. This article will help you to install Seafile on Ubuntu server.

2. Prerequisites

Operating System must be Ubuntu 14.04 LTS
Linux server with a valid hostname, 2GB RAM
LAMP must be installed

3. Install all Dependency Softwares for Seafile

First, you need to update the system to make sure that all softwares are updated.

# apt-get update
# apt-get upgrade

Then install the following required dependencies:

Java Runtime Environment (JRE)

# apt-get install openjdk-7-jre

Install poppler-utils

# apt-get install poppler-utils

Install Python and its libraries

# apt-get install libpython2.7  python-simplejson python-setuptools python-imaging python-mysqldb
# easy_install pip
# pip install boto

4. Install Seafile

You need to download the latest stable version of Seafile and extract it using the below commands. It is important to choose the package as per your system architecture. The downloaded seafile package here is that of 32 bit system.

# cd /usr/local/src
# wget
# tar -xzf seafile-server_5.0.4_i386.tar.gz
# cd seafile-server-5.0.4/

5. Configure Seafile

Here you have to run the following script to check whether your server meets all requirements.

# ./

Since we have already installed all system requirements, you just press the Enter key to continue. Next you will be prompted to enter several information like server name, IP address, default port, create MySQL database etc for configuring seafile in the server. You should enter the server name and IP address that you have set up for your server. When you answer the questions which are related to default values, it is always good to press the “enter” key to accept the values.

Some examples are shown below :

What is the name of the server? It will be displayed on the client.
3 - 15 letters or digits
[ server name ]

What is the ip or domain of the server?
For example:,
[ This server's ip or domain ]

Where do you want to put your seafile data?
Please use a volume with enough free space
[ default "/usr/local/src/seafile-data" ]

Which port do you want to use for the seafile fileserver?
[ default "8082" ]

After all the required information are entered you will get the summary of your configuration. Finally press enter for saving the configuration.

You will get the following message after saving the configuration.

Your seafile server configuration has been finished successfully.

run seafile server:     ./ { start | stop | restart }
run seahub  server:     ./  { start  | stop | restart  }

6. Start Seafile and seahub services

First you need to start the seafile service, which controls the file transfer and data sharing function.

# ./ start

Next you need to start the seahub servcie. It provides the web interface to interact with seafile.

# ./ start

Since the Seahub server is started for the first time, you will need to create the admin account.

What is the email for the admin account?
[ admin email ]

What is the password for the admin account?
[ admin password ]

Enter the password again:
[ admin password again ]

Successfully created seafile admin

7. Seafile Web Interface

Seahub is Seafile server package which contains Python HTTP server. Once the Seahub server is started, you can access Seafile via http://your domain or IP:8000 and then login with the admin account and password that was created on the configuration time. After login to the page, you can create and manage your files, contacts, groups, libraries, etc.