Linux Server實作Dropbox雲端檔案同步

Linux Server實作Dropbox雲端檔案同步

Dropbox的空間要多大才符合需求?若只是同步文件資料,我想用個幾百MB就很了不起了,有人覺得原本2GB的空間就十分足夠,但是也有很多人拚了命的一直想把空間往上加。我因為南北一直跑的關係,有時候在北部更新軟體,有時候在南部更新軟體,更有兩台NB與一台桌機在作業,除了Sever上的軟體為新版本,三台電腦的檔案都沒有相當的同步,自從使用Dropbox之後真的解決了我這部分的困擾,不管我在哪裡工作,只要電腦連的上線,就可以確保我的檔案資料庫為最新狀態。

(先前介紹文章:利用Dropbox快速分享網路相簿、可以外連的2G圖片空間

usage.gif

除了軟體的同步,還包含了我的圖片同步,於是我Dropbox的確使用了不少空間,雖然覺得有點太多,但是想說等快不夠用的時候再來想辦法,現在的剩餘空間應該還可以撐幾個月吧!而Dropbox除了可以資料同步外,更可以當成檔案備份的用途,到底要怎麼使用取決於大家啦!你也把桌面目錄設定為同步對象,這樣就有雲端桌面;也可以將免安裝軟體與設定都一併同步,若是一些記事軟體,就有雲端記事本了不是嗎?

而我一直希望以備份為目標,反正只要有空間,多幾份資料沒什麼不好,於是希望我的Linux主機也加入同步的行列,若是直接使用官方的套套建,我遇到glib必須升級的問題,而且我的確不需要gui的介面,command-line的方式為我的首選,簡單來說,command-line的同步資料只依靠一個資料夾與一個監控程式就達成了。

首先先進入到各位的家目錄
# cd ~

下載適合自己環境的版本
# wget http://www.dropbox.com/download/?plat=lnx.x86 -O dropbox.tar.gz
or
# wget http://www.dropbox.com/download/?plat=lnx.x86_64 -O dropbox.tar.gz

解壓縮檔案
# tar -zxvpf dropbox.tar.gz

執行Dropbox daemon
# ~/.dropbox-dist/dropboxd
第一次執行daemon,程式並沒有地方讓你輸入帳號密碼,但是會產生一段連結,透過存取連結來認證身分
This client is not linked to any account...
Please visit https://www.dropbox.com/cli_link?host_id=xxxxxxxxxxxxxxxx to link this machine.

此時從電腦上存取連結,登入Dropbox,網頁上方則會出現「This computer is already linked to a Dropbox account.」
link_machine.gif

回到Server上則可以看到歡迎訊息,代表連結成功
Client successfully linked, Welcome chiahsin!

連結成功之後,就會在你的家目錄底下建立一個「Dropbox」的目錄,開始進行同步檔案,不過dropboxd是在前景執行,下次啟動時可以將他丟到背景(&)去跑;此外,光是依靠dropboxd的daemon並沒有辦法看出檔案同步的狀態,這時候我們需要一個額外的指令,可以啟動程式、停止程式與顯示狀態。

很高興官方都幫我們準備好了,我們只要下載就可以使用
# wget http://www.dropbox.com/download?dl=packages/dropbox.py
# chmod +x dropbox.py
將檔案設定為可以執行,隨意你放哪裡都可以,通常會建議放在~/bin、/usr/local/bin

Python版本需要2.6以上
# dropbox.py help
  File "./dropbox.py", line 128
    with open(pidfile, "r") as f:
            ^
SyntaxError: invalid syntax

若是出現以上訊息,代表Python不符合,請升級!我也遇到如此狀況,可是系統內yum也無法直接升級到2.6的版本,這時請自己到Python自己下載安裝,解壓縮 && configure && make && make install,預設新的Python的指令會在「/usr/local/bin/python」

重新檢查版本沒有問題
# /usr/local/bin/python -V
Python 2.7.1

vi dropbox.py的檔案,將第一行的「#!/usr/bin/python」置換成「#!/usr/local/bin/python」

 dropbox.py的執行
查看HELP
# dropbox.py help
Dropbox command-line interface

commands:

Note: use dropbox help <command> to view usage for a specific command.

 status       get current status of the dropboxd
 help         provide help
 puburl       get public url of a file in your dropbox
 stop         stop dropboxd
 running      return whether dropbox is running
 start        start dropboxd
 filestatus   get current sync status of one or more files
 ls           list directory contents with current sync status
 autostart    automatically start dropbox at login
 exclude      ignores/excludes a directory from syncing

啟動中
# dropbox.py status
Starting...

建立檔案INDEX
# dropbox.py status
Uploading 477 files...
Indexing 3310 files...
Downloading file list...

開始下載檔案囉!
# dropbox.py status
Downloading 28907 files (71.0 KB/sec, 45 hr left)

透過stop可以停止服務
# dropbox.py stop
Dropbox daemon stopped.

停止後查看狀態
# dropbox.py status
Dropbox isn't running!

透過start啟動服務
# dropbox.py start
Starting Dropbox...Done!

以上的主要步驟參考:http://wiki.dropbox.com/TipsAndTricks/TextBasedLinuxInstall

官方的文件還有教導更多東西,譬如說如何設定為服務,以及開機啟動,不過我覺得dropbox.py的指令就更方便了。而更改Dropbox同步的目錄也可以透過指令更改,不過我執行時就一直遇到失敗,直接用link解決掉。

現在我就等著同步完成啦~檔案太多要花不少時間啊!這個簡易的方式真的很不錯,若是在多台主機上面同時使用,還可以同步每台server的檔案,不過我目前還沒有愛玩到這種程度啊!有的話一定會再跟大家報告的^^。

Linux Server實作Dropbox雲端檔案同步

Linux Server實作Dropbox雲端檔案同步 相關文章


參考內容推薦

Linux Server實作Dropbox雲端檔案同步

Dropbox的空間要多大才符合需求?若只是同步文件資料,我想用個幾百MB就很了不起了,有人...

Jongching&#39;s Blog

Linux Server 實作Dropbox雲端檔案同步 參考網址: http://portable.easylife.tw/2530?category=4 張貼者: jongching 於 09:51 以電子郵件傳送這篇文章 BlogThis!分享至 Twitter 分享至 Facebook 分享到 Pinterest ...

綠色工廠哇哇

... 為了能夠備份上面的檔案,還特別找了Linux Command 版的同步程式,然後掛載NAS ... Linux Server 實作Dropbox 雲端檔案同步:http://portable.easylife.tw/2530

Dropbox

Dropbox是Dropbox公司執行的線上儲存服務,透過雲端運算實作網際網路上的檔案同步,使用者可以儲存並共享檔案和資料夾。適用平台: Linux / Windows / Mac資料來源: http://www.dropbox.com ...

檔案同步

Sugarsync 是一個提供個人及企業雲端儲存服務的公司, 透過雲端運算實作網際網路上的檔案同步,使用者可以儲存並共享檔案. 資料來源:https://www.sugarsync.com/ Dropbox Dropbox是Dropbox公司執行的線上儲存服務,透過雲端運算實作網際網路上的檔案 ...