這篇會跟大家介紹如何自己建設一個類似類似 Google Drive, Dropbox 的伺服器。(自己硬碟比較便宜不安全就是了 XD)
這個是因為前陣子整理 File Server,翻東西真的好麻煩就在找Solution。找到 Seafile、ownCloud、SparkleShare 這些,但感覺上 Seafile 比較全面就試試了。
這個是因為前陣子整理 File Server,翻東西真的好麻煩就在找Solution。找到 Seafile、ownCloud、SparkleShare 這些,但感覺上 Seafile 比較全面就試試了。
詳細功能
我們接下來會使用 Community Edition ( 因為是免費啦 ),有興趣的人可以自己買 Business Edition。
我們可以在這兒下載它的 Server 端。
個人比較喜歡用 Linux 當 Server,所以會以 Linux 當教學。如果需要 Windows 版的可以留言我再準備,至於 Raspberry Pi 相信買它的人也有能力自己來了 XD
安裝步驟
環境 : Ubuntu 14.04
- 用 cd 到你找得到的地方,For example cd /home/illidanwg
- 我們先下載安裝包,到你找得到的地方。
32bit wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_{version}_i386.tar.gz
64bit wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_{version}_x86-64.tar.gz
* 不知道自己裝什麼的可以用 uname -m 看 是 32bit 還是 64bit
* {version} 這個要換成版本號這篇會用 3.0.4. - 等他跑完。
- 這時候 ls 應該會看到你下載的 seafile-server_3.0.4_x86-64.tar.gz ( 版本個個人不一樣的)
- 用 tar -zxvf seafile* 解壓縮 ( 這是懶人打法,好孩子請打全名不要用 * XD)
- 再 ls 時就會看到 seafile-server-3.0.4 的 directory。
- 進去以後會看到好多東西,先不要亂動,由於 Seafile 需要用到 database 我們要先 Config 一下。
- 輸入 sudo apt-get update && sudo apt-get install mysql-server
- 它會要你輸入 root 的密碼。
- 如果你不想直接在 Seafile 用 Database root 的密碼要用以下 SQL 指令建立 table 和 user
create database `ccnet-db` character set = 'utf8';
create database `seafile-db` character set = 'utf8';
create database `seahub-db` character set = 'utf8';
create user 'seafile'@'localhost' identified by 'seafile';
GRANT ALL PRIVILEGES ON `ccnet-db`.* to `seafile`;
GRANT ALL PRIVILEGES ON `seafile-db`.* to `seafile`;
GRANT ALL PRIVILEGES ON `seahub-db`.* to `seafile`; - 接下來還要裝一些Seafile 的 python 的軟件。
python 2.6.5+ or 2.7
python-setuptools
python-simplejson
python-imaging
python-mysqldb
可以用以下指令
sudo apt-get update && sudo apt-get install python2.7 python-setuptools python-simplejson python-imaging python-mysqldb - 東西都裝好以後我們就可以跑 ./setup-seafile-mysql.sh 開始安裝 Seafile server
- 按下去以後系統會一步一步,要求你輸入一些設定
[server name] 這台server的名字,隨你喜歡打什麼都可以,但要 3-15 個英文、數字或 底線
[This server's ip or domain] 這台 server 的 ip 或 domain name,建議有 domain 就用 domain,因為 ip 一變好多東西用不了,沒有就去申請一個 no-ip 的 ddns 吧!用 ip 也可以但真的不要轉因為會好煩....
[ccnet server port] ccnet server 的 port 號,如沒特別用 default 就好了。
[seafile data dir] seafile 存放 data 的地方,建議放到比較大的 partition,因為要放 index、data file 之類好多東西。
[seafile server port] seafile server 的 port 號,如沒特別用 default 就好了。
[httpserver port] http server 的 port 號,如沒特別用 default 就好了。 - 接下來它會問你
(1) 用新的 database
(2) 用自已的 database
我們用 1 就好了,如果你有 backup 舊的再玩 2 吧! - 也是按指示設定 database 的資料
- 設定完,它會跳出設定了的東西。沒問題就按 enter 讓它跑吧
- 跑完以後, 我們就可以用
run seafile server: ./seafile.sh { start | stop | restart }
run seahub server: ./seahub.sh { start <port> | stop | restart <port> }
去開啟 server 了。 - 第一次用 ./seahub.sh start 時, 他會要求你設定 admin 的帳號。( 這步很重要,沒帳號上面就廢了)
- 2 個服務都成功 start 後。就可以在 http://{ip}:8000/ 用 admin 登入囉
可以用囉 !!
登入後可以在右上角設定其他帳號、權限之類的,也可以試試上傳下載資料囉!另外,很多人喜歡像 dropbox 那種自動同步,當然 seafile 也有提供。
可以在這兒下載到,這教學就到這裡了,其實還有其他功能和設定沒有提到。有興趣研究的人可以翻翻他們的Wiki 或留言問我,我會盡量解答我知道的 XD
0 comments:
Post a Comment