Seafile 是一個開源的文件云存儲平臺,解決文件集中存儲、同步、多平臺訪問的問,允許用戶創建“群組”,在群組內共享和同步文件,方便了團隊協同工作。
安裝依賴
# 在 CentOS 7 下
# (MariaDB 是 MySQL 的分支)
yum install mariadb-server
# 如果以來有問題
# 嘗試在后面加上參數? --skip-broken
yum install python-setuptools python-imaging python-ldap MySQL-python python-memcached python-urllib3
yum 安裝 mysqldb-python 后面seafile安裝報錯,需要通過 python 的工具pip來安裝MySQL-python?
pip install MySQL-python
下載
在這里下載seafile-server_6.0.7_x86-64.tar.gz,你可以選擇你需要的版本
# 查看系統版本
cat /proc/versionwget http://download-cn.seafile.com/seafile-server_6.0.7_x86-64.tar.gz
# 解壓
tar -zxvf seafile-server_6.0.7_x86-64.tar.gz
# 解壓放到一個目錄
cd seafile-server-*
安裝
我的數據庫使用MySQL,你需要先在數據庫中建立一個 MySQL 用戶seafile。
# 登錄MySQL創建一個用戶
mysql -uroot -p
# 創建用戶設置密碼
mysql> Create USER'seafile'@'%'IDENTIFIED BY'123456';
# 執行下面語句立即生效
mysql> flush privileges;
運行./setup-seafile-mysql.sh安裝腳本并回答預設問題
./setup-seafile-mysql.sh?
Checking python on this machine ...?
Checking python module: setuptools ... Done.?
Checking python module: python-imaging ... Done.?
Checking python module: python-mysqldb ... Done.
-----------------------------------------------------------------
This script will guide you to setup your seafile server using MySQL.
Make sure you havereadseafile server manual at? ? ? ? https://github.com/haiwen/seafile/wiki
Press ENTER tocontinue
-----------------------------------------------------------------
What is the name of the server? It will be displayed on the client.3-15letters or digits
[ server name ] <填寫 seafile 服務器的名字>
What is the ip or domain of the server?For example: www.mycompany.com,192.168.1.101
[ This server's ip or domain ]Where do you want to put your seafile data?
Please use a volume with enough free space
[ default "/home/www/jinpans/seafile-data" ]Which port do you want to use for the seafile fileserver?
[ default "8082" ]? [ seafile fileserver 使用的 TCP 端口 ]
-------------------------------------------------------
Please choose a way to initialize seafile databases:
-------------------------------------------------------
[1] Create new ccnet/seafile/seahub databases
你需要提供根密碼. 腳本程序會創建數據庫和用戶。
[2] Use existing ccnet/seafile/seahub databases
ccnet/seafile/seahub 數據庫應該已經被你(或者其他人)提前創建。
[ 1 or 2 ] <選擇一種創建 Seafile 數據庫的方式>
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 ] <輸入root密碼>
verifying password of user root ...? done
Enter the name for mysql user of seafile. It would be created if not exists.
[ default "seafile" ] <默認seafile的MySQL用戶名,可以使用默認>
Enter the password for mysql user "seafile":
[ password for seafile ] <輸入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:? ? ? ? ? ? seafile 服務器的名字
server ip/domain:? ? ? 192.168.1.101
seafile data dir:? ? ? /home/www/jinpans/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 /home/www/jinpans/ccnet.
Generating seafile configuration ...
Done.
done
Generating seahub configuration ...
----------------------------------------
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 | stop | restart }
-----------------------------------------------------------------
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 tohttps://github.com/haiwen/seafile/wiki
上面算是結束了,然后在 seafile-server_6.0.7 目錄下面,運行如下命令
啟動 Seafile:
./seafile.sh start ? # 啟動 Seafile 服務
啟動 Seahub
./seahub.sh start # 啟動 Seahub 網站 (默認運行在8000端口上)# 你第一次啟動 seahub 時,seahub.sh 腳本會提示你創建一個 seafile 管理員帳號。LC_ALL is notsetinENV,setto en_US.UTF-8Starting seahub at port8000...----------------------------------------It's the first time you start the seafile server. Now let's create the admin account----------------------------------------What is the emailforthe admin account?[ admin email ] <這里輸入郵箱地址>What is the passwordforthe admin account?[ admin password ] <這里輸入密碼>Enter the password again:[ admin password again ] <這里確認輸入密碼>----------------------------------------Successfully created seafile admin----------------------------------------Seahub is startedDone.
然后你可以打開它了:
http://192.168.1.111:8000/
服務管理
./seahub.sh stop # 停止 Seafile 進程
./seafile.sh stop ? # 停止 Seahub
./seafile.sh start ? # 啟動 Seafile 服務
./seahub.sh start8001 # 啟動 Seahub 網站 (運行在8001端口上)
./seafile.sh restart ? ? ? ?# 停止當前的 Seafile 進程,然后重啟 Seafile
./seahub.sh restart ? ? ? # 停止當前的 Seahub 進程,并在 8000 端口重新啟動 Seahub
參考資料