1. 程式人生 > >seafile私有云檔案管理系統系統服務搭建指南

seafile私有云檔案管理系統系統服務搭建指南

Seafile是一個開源、專業、可靠的雲端儲存平臺;解決檔案集中儲存、共享和跨平臺訪問等問題,由北京海文互知網路有限公司開發,釋出於201210月;除了一般網盤所提供的雲端儲存以及共享功能外,Seafile還提供訊息通訊、群組討論等輔助功能,幫助更好的圍繞檔案展開協同工作。

按照其手冊,首先我下載了4.1.2 64bitlinux服務端。

佈置seafile時可以選擇SQLLite或者MySQL兩種不同方式,目前按照我們的環境,當然選擇了MySQL模式。

第一步當然是要解壓安裝包, 所以我們在150伺服器的/home下新建一個目錄filecloud,將壓縮包copy並且解壓在filecloud

內。然後再filecloud內建立installed資料夾,將壓縮包移到installed內。

這樣設計目錄的好處在於

    和 seafile 相關的配置檔案都可以放在 haiwen 目錄下,便於集中管理.

    後續升級時,你只需要解壓最新的安裝包到 haiwen 目錄下.

這樣你可以重用 haiwen 目錄下已經存在的配置檔案,而不用重新配置.

完成基本的檔案複製及解壓後,按照安裝手冊,接下來要配置資料庫。seafile提供了兩種配置資料庫的辦法:使用自動指令碼,或者手動安裝。前者要求資料庫的root密碼(150上本地root密碼是321456),後者需要一定的資料庫知識。我們還是優先嚐試前一種辦法吧。

首先嚐試執行setup-seafile-mysql.sh指令碼,哦,不行,要求安裝python-imaging

這是什麼東東?百度上查到,這是python的圖形庫,hoho,在centos下可以用yum install python2.6-imaging,汗,安裝過程似乎有點艱難,主要是網路狀況堪憂,但是考慮到之後這個系統的管理可能還是需要使用python的圖形介面,所以我們今天要突破一下。查了百度,這裡有一個安裝python imaging的攻略:http://www.pythonware.com/products/pil/index.htm下載pil1.1.7 sourcekit版本(適應所有作業系統),解壓到

/home/pil目錄內,然後再其內部執行python setup.py build_ext -i來安裝。安裝完成試一下看看: python selftest.py,我得到的訊息是57 tests passed,似乎是好訊息。然後執行python setup.py install好的成功了, 看來今後還能用import Image來使用image圖形類了。

再次執行setup-seafile-mysql.sh,過關,贊,但這次又說需要python-mysql庫,悲劇了

。還是先試試他的辦法sudo yum install MySQL-python,理所當然網路不通。這個有點嚇人,MySQL可不是imaging這種小點心哦。不過linux系統向來如此,所以要繼續衝下去,在https://pypi.python.org/pypi/MySQL-python/網站,下載MySQL-python 1.2.5的那個zip檔案(另一個是win安裝版,想來沒人會搞錯吧),直接解壓然後copy/home/MySQLpython目錄內,執行命令:python setup.py install,安裝完成,用python 命令檢驗一下import MySQLdb, 悲劇,這次結果失敗了,報錯,缺少libmysqlclient.so.18,趕緊查查,怎麼解決,locate一下,libmysqlclient.so.18gxxmysql安裝目錄裡,好吧亂連結一下到/usr/lib下。

折騰來折騰去終於可以執行指令碼了,安裝指令碼step by step,設定各種引數。具體如下:

server name : File_Cloud

server ip    : 192.168.1.150

ccnet server port : 10001

file data(資料檔案存放路徑):/data1/file_cloud_data

seafile server port : 12001

seafile fileserver port : 8082

建立資料的自動指令碼引數如下:

資料庫host : localhost

mysql port : 3306

rootuserpasswd : 321456

mysql root user name : root

ccnet db name : ccnet-db

seafile-db db name : seafile-db

seahub db name : seahub-db

自動指令碼安裝還算順利,接下來還有一些工作要做:

例如 :因為 Seafile 在客戶端和伺服器之間使用持續連線,如果你的客戶端數量巨大你應該在啟動 Seafile 之前修改你的 Linux 檔案最大開啟數,命令是 ulimit -n 30000 , 我們連結量不大,沒做這個。

啟動Seafile服務和Seahub網站命令

./seafile.sh start #啟動Seafile服務

./seahub.sh start <port> #啟動網站 預設埠8000

目前在內網用 192.168.1.150:8000可以訪問網頁版了。

首次啟動非常簡單,想要換一個網路埠號就會比較複雜,具體可以檢視線上手冊。

如果忘記了管理員密碼,我還真忘記過一次,可以執行reset-admin.sh指令碼來清空管理員帳號密碼。