seafile私有云檔案管理系統系統服務搭建指南
Seafile是一個開源、專業、可靠的雲端儲存平臺;解決檔案集中儲存、共享和跨平臺訪問等問題,由北京海文互知網路有限公司開發,釋出於2012年10月;除了一般網盤所提供的雲端儲存以及共享功能外,Seafile還提供訊息通訊、群組討論等輔助功能,幫助更好的圍繞檔案展開協同工作。
按照其手冊,首先我下載了4.1.2 64bit版linux服務端。
佈置seafile時可以選擇SQLLite或者MySQL兩種不同方式,目前按照我們的環境,當然選擇了MySQL模式。
第一步當然是要解壓安裝包, 所以我們在150伺服器的/home下新建一個目錄:filecloud,將壓縮包copy並且解壓在filecloud
這樣設計目錄的好處在於
和 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版本(適應所有作業系統),解壓到
再次執行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.18在gxx的mysql安裝目錄裡,好吧亂連結一下到/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指令碼來清空管理員帳號密碼。