What is Seafile?
Seafile is a free and open source file hosting software. Its coded in Python and it also has a web interface, just like Dropbox. With the web interface you can access your data from anywhere! All you need is a internet connection and a modern web browser. Seafile also has software to be able to sync your files like Dropbox has. The desktop client is available for Windows, OS X, Linux, iOS, Android and Windows Phone 8+. In this tutorial I will be teaching you how to setup a server for Seafile.
Features of Seafile
- Public link share function. You can share your files to the public and can also password protect access to it. Handy for sending files to family and friends!
- Client-side encryption. For the more privacy oriented users Seafile offers client side encryption. This means your files will be sent encrypted to your server.
- Multi-user friendly. You can create as many users as you like! You can also set their permissions and share folders with users. Very good if you want to setup a family server.
- 1 CPU core
- 256MB RAM
- 5GB Disk Space
To start off the install make sure your server has the most up-to-date version of its repos. Run
apt-get update -y
Seafile requires a few packages in order to run successfully. Install them using:
apt-get install python2.7 python-setuptools python-imaging sqlite3 wget nano -y
Once the packages have been installed we have to change our working directory to the root directory.
Now that you are done we will start by creating a folder. This can be named anything you want but I will name it seafile-folder
Now that you created the folder you will have to enter it.
Once you have created the folder we must download the latest version of Seafile to install.
Go to http://www.seafile.com/en/download/#server and grab the latest download link. At the time of this writing the latest version is v4.2.3 and because of that the link will be https://bintray.com/artifact/download/seafile-org/seafile/seafile-server_4.2.3_x86-64.tar.gz
Download the software to your server using wget
Once the file finishes downloading it must be extracted. Run the following command using the name of the file you downloaded
tar -xzvf seafile-server_4.2.3_x86-64.tar.gz
If you run
ls you will notice a new folder has been created with the contents of the extracted file. Enter it
Now that we have all the files and software required for Seafile we can begin configuring it. Start the setup script using:
The setup script will ask you a series of questions.
Are you running this as root? This is really up to you. Are you logged in as root? If yes enter yes.
This question is quite simple to answer. Just do as it says.
Next you will choose a name for your seafile server. It can be what you want. But I am going to keep it simple and just call it seafile.
Once you answered that question it will ask for your server IP or domain. I recommend using a domain since it’s easier to remember but for those who don’t want to use a domain you can still use your server IP address.
For the next step it will ask you for the ccnet port. I strongly recommend to keep the ports and the data save location default. You can do so by pressing Enter until you get a confirm question. When you get that you confirm by pressing Enter.
Once you confirm the configuration it will write it out to file
Setup is completed.
Now start seafile and seahub. We need both running.
./seafile.sh start ./seahub.sh start
When starting SeaHub it will ask you to create a administrator account. Simply create a username and password you will remember.
Seahub is started Done.
You are ready to access the web hub. Using the web hub you can configure settings, create new users and more. To access it you need to go to this address in your web browser.
You should now be presented with a login screen. Type the administrator account you just created in and login.
You have now successfully installed Seafile, a self-hosted alternative to Dropbox. Seafile offers a desktop client for Windows, Mac and Linux and apps for Android, iOS and Windows Phone. There are limitless possibilities of what you can use it for without having for the markup of Dropbox.
This work is licensed under a Creative Commons Attribution 4.0 International License.