相信大多的IT人都有使用DropBox的服務,這個服務讓我們可以將重要的文件,同步到一個網路硬碟,然後不管道哪裡都可以用這個服務將重要的資料在異機、異地取回這些文件。然而這個服務是一個由服務提供者(Service Provide)所維護的系統,若與企業研發相關的重要機密,基於商業機密的考量,可能就無法享用這個服務的便利性了。
筆者近來找了一些類似DropBox服務的軟體,種類相當多,而且性能都非常好,依據用途的不同可選用不同的套件。
FTPBox,透過FTPBox套件安裝在Client端就可以將資料同步到FTP Server。看起來當前僅支援Windows平台。
ownCloud,筆者這次測試的軟體,和DropBox非常非常類似,支援多種作業系統:如Mac OS, Linux, Windows, Android...也可以使用WebDAV的方式進行同步。由於測試的結果發現這套軟體的運作非常近似DropBox,且安裝過程較無痛苦,所以是此次最佳的學習範例。另外若企業有具備維護Linux系統的人才,可採用此套軟體簡化備份、並節省大量的建置成本。自第4版開始之後,新加入版本控制功能、檔案加密、還有免安裝Client以拖拉方式進行同步等許許多多的先進能力。。
SparkleShare,鼎鼎有名的同步軟體,主要是以git套件所兜製而成,具有版本控制的功能,很適合專案開發使用。SparkleShare支援了Linux, Mac OS與Windows Vista之後的作業系統。這套系統應是功能最完整且強大的一套,筆者會在ownCloud測試完畢後繼續進行SparkleShare的安裝。
一般的企業級備份軟體功能太過於龐雜,增加部署的困難度,若要自行建置一套完整的備份系統,如筆者寫過的Bacula備份軟體, 沒有基礎的備份概念是完全架設不起來的。
而ownCloud只要您知道怎麼將資料移動到資料夾,就可以輕鬆的理解這套軟體的運作模式,強烈建議中小企業使用此軟體,不論Server對不對外公開,都可依照企業的需求來進行設定。除了軟體安裝之外,底層的File System只要做不同的變化,即可適應不同的應用。比如Global File System就可以大為增強這套軟體的可用性,只要IT人員學習相關領域的知識即可。
那我們就開始進行ownCloud的安裝與實測了。
環境
Server OS: ubuntu 12.04 x64
Client OS: ubuntu 12.04 x64
Windows7 Home Edition x64
iphone 4 IOS 6
注意:不要使用ubuntu內建的owncloud套件,因為目前ubuntu12.04的owncloud server版本僅提供3.0.0,這個版本在client與Server進行同步的時候,有無法建立資料夾的問題。筆者花了很多時間在解這個問題上,但是後來檢視官方最新版本為4.5.0,安裝此版本可以省去非常多的麻煩。
筆者使用的是一個KVM虛擬主機,下面就一步一步將安裝的過程寫出,讀者只要照著做一定可以用。
一、安裝
1. 先安裝mysql-server
a00ylc00@ownCloud:~$ sudo apt-get install mysql-server
安裝過程中,系統會詢問我們要給database root用的密碼,這邊記得設定一個自己容易記得住的,因為在進行第一次連線到網頁的設定時,會要求輸入這組密碼。
2. 連線到ownCloud的主網頁http://owncloud.org/
在ownCloud的主頁右上角,點選"Install"
點選"Install" |
3. 點選"Open Build Servic
4. 依照下圖中的方法將ownCloud的更新套件url加入/etc/apt/source.list
a00ylc00@ownCloud:~$ sudo vi /etc/apt/sources.list 在檔案中的最後加入下面一行
deb http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_12.04/ /
存檔離開。a00ylc00@ownCloud:~$ wget http://download.opensuse.org/repositories/isv:ownCloud:community/xUbuntu_12.04/Release.key
a00ylc00@ownCloud:~$ sudo apt-key add - < Release.key
OK
上面兩個指令將key匯入系統後就不會有驗證的問題了。
a00ylc00@ownCloud:~$ sudo apt-get update 將apt-get的套件清單更新一次,這樣就可以安裝上面我們加入source.list最後一行的套件了。
5. 開始安裝套件
a00ylc00@ownCloud:~$ sudo apt-get install owncloud
6. 再確認一次該開的Daemon都有開啟
a00ylc00@ownCloud:~$ sudo /etc/init.d/mysql restart mysql-server啟動
a00ylc00@ownCloud:~$ sudo /etc/init.d/apache2 restart apache2 daemon啟動
7. 在瀏覽器開啟自建的ownCloud網頁位址 http://該主機IP/owncloud
如筆者的環境為:http://192.168.1.67/owncloud/
8. 建立管理帳號 & 資料庫系統的root帳號密碼
下圖中以紅色框起的部份是讀者需要修改的地方。
9. 點選Finish, 完成。
10. 謝謝大家的耐心,現在您已經擁有自建的網路同步磁碟了。下個主題筆者將分享底層的檔案系統(File System),來增強像ownCloud這種類似的軟體的能力,比如無限擴充的空間、分散式運算的Global File System等。
讀者:等等..... 你都還沒介紹怎麼用呢!
筆者:啊?連怎麼用都要寫?
好吧,分享一半的哪算分享?咱們來瞧瞧實際使用的過程。
二、使用(Server端管理)
這邊筆者多貼圖,讓大家可以看看實際使用的畫面。
1. 透過網頁管理
完成設定後的初始頁面
一開始的時候,裡面什麼內容都沒有
Nothing Here. |
2. 點擊"New",然後選擇Folder,輸入一個命名,筆者這邊起了個名"ownCloud_screenshots",將所有在這個文章裡的截圖都丟了進去。
網頁管理可以很方便的將自己想上傳的檔案做儲存,若公司有VPN的話,在家連回公司也可以將檔案取回。
檔案列表 |
3. 若要新增使用者,則在項目清單下方,有一個小小的齒輪圖示點擊,點選"Users"後進入User管理畫面,讀者可以嘗試著建立新帳號或新群組。
齒輪在這 |
點擊Users |
建立User或群組 |
設定Quota |
4. 直至目前為止,上面所有操作都在Server建立起來之後就可以使用,只要您擁有管理者權限就可以建立其他使用者提供服務。ownCloud還支援LDAP/AD認證,所以很適合在企業使用。
三、使用Sync Client(Client Agent)
以Sync Client套件做資料的同步(與DropBox最相近的功能來了)
這邊筆者展示ownCloud所支援的三種平台給讀者參考。
1. Windows7實測:
從http://owncloud.org/sync-clients/ 下載Window Client,挑選您所需要的版本。
安裝完畢之後,在右下角常駐程式列找出ownCloud。右鍵點擊owncloud圖示後,選擇Configure,然後輸入server IP與使用者名稱及密碼(若已經為user建立帳號,就可以請user輸入個人的帳號開始進行資料同步)。
右鍵點擊小圖示,並選擇"Configure" |
填入ownCloud Server位址& 使用者帳號密碼。 如果Apach設定了ssl模組,就可將"Use secure connection" 勾選並使用https來與主機連線。 |
設定完畢後完成連線時,點擊"Next",將顯示連線成功的視窗,訊息如下圖。
點選"Finish"後完成安裝。
此時系統預設就設定C:\Users\使用者帳號\ownCloud為同步的路徑,而Server端則出現"clientsync"的資料夾,準備好隨時將Client端的資料同步到Server上。此時資料夾中並未有任何資料,所以我們可以將想要備份的資料丟到C:\Users\使用者帳號\ownCloud這個路徑裡。
Server上出現了clientsync資料夾 |
資料夾中目前並沒有任何資料 |
丟些資料到同步路徑上 |
一旦C:\Users\使用者帳號\ownCloud中有了資料,系統馬上開始進行同步,將資料備份到Server上。從Configure的視窗中可以看到雲的中間已經開始進行同步的圖示了,而Server上也會在同步完成之後,同時具有一份一模一樣的資料。
開始同步了! |
同步完成,Server上已經有了Client備份上來的資料。 |
Windows7平台測試完成!
2. Linux平台實測(ubuntu12.04):
在安裝Server的時候,我們已經將官方的source加到/etc/apt/source.list中,因此client也是使用這個位址來下載,套件名稱為owncloud-client
a00ylc00@ownCloud:~$ sudo apt-cache search owncloud #先確認套件名稱
[sudo] password for a00ylc00:
libcsync-plugin-owncloud - A user level bidirectional client only file synchronizer
owncloud - ownCloud Server - Private file sync and share server
owncloud-client - The ownCloud client is based on Mirall - gitorious.org/owncloud/mirall
a00ylc00@ownCloud:~$ sudo apt-get install owncloud-client #安裝套件
套件安裝完畢後,就像設定Window7一樣簡單,以圖形界面來設定。
但是系統預設都是以clientsync的路徑建立在Server上,因此容易混淆,我們可以在configure選項中將現有的設定砍除,建立新的路徑。下面我們就以圖示來說明整個流程。
執行套件
找到ownCloud Client的圖示執行之 |
執行後,ownCloud Client會在背景執行,所以我們要在桌面上方找到這個圖示,並點選Configure.
右鍵點選小圖示後,點擊 Configure進行同步設定 |
系統預設路徑就是在"clientsync"此資料夾,若直接使用就會將資料與剛剛Win7的放在一塊,所以我們重新再指派一個路徑做同步。這邊我們將/home/a00ylc00/ownCloud → clientsync的同步選項移除,再建立一份新的。這邊筆者建立了/home/a00ylc00/Downloads → ubuntu_downloads的同步選項,請參考下面的圖示步驟。
移除這個同步的設定 |
/home/a00ylc00/Downloads → ubuntu_download |
選取"to your ownCloud"並命名路徑為"ubuntu_downloads", 然後點擊"create"建立資料夾於Server上 |
此時同步的選項就建立起來了,狀態如下圖。
新建一個新的同步項目 |
建立完成後,丟些資料進Client端的Downloads資料夾試試。
將amd的driver檔丟進Downloads資料夾中 |
進入Server上的ubuntu_downloads資料夾查看有無新增檔案
點此資料夾查看檔案 |
有了!
ubuntu Client sync測試完成!
3. apple IOS平台實測(iphone4 on ISO6):
請直接參照圖片。
先下載app,不管apple或android都要30元台幣。
安裝app |
進入app之後開始初始設定。
設定server IP及使用者帳號密碼 |
在主畫面直接新增資料夾
建立iphone4_IOS6資料夾 註:後來因為測試又更名為iphone_IOS6 |
上傳資料
選取檔案,丟到Server上 |
檔案以上傳到Server上
已上傳的檔案 |
驗證Server上是否已存在這些檔案
資料夾已在Server上 |
檔案也已經上傳。
檔案列表於iphone_IOS6 |
測試完成!
這篇文章筆者做了最初階的備份測試,其他較底層的認證,如透過LDAP或AD,mount file system之類的並未開始進行,筆者一步步將自己的系統測試分享給大家之後,有可以應用在這個領域的也會額外進行測試,將來讀可以可再看到更多元化的內容。
Reference:
http://betanews.com/2012/06/30/four-self-hosted-dropbox-like-services-businesses-can-use/
http://www.quora.com/Dropbox/Is-there-something-similar-to-Dropbox-that-lets-me-use-my-own-server
http://www.sparkleshare.org
https://help.ubuntu.com/community/iFolderInstall
http://gluster.org/community/documentation//index.php/GlusterFS_User_Guide
沒有留言:
張貼留言
艾倫搜尋企業級的Open Source Solutions,提供簡易好上手的教學文件。