如何使用btsync通過網路實現計算機間的檔案共享

linux.cn發表於2015-04-03

如果你是那種使用各式裝置在網上工作的人,我相信你肯定需要一個在不同裝置間同步檔案及目錄的方法,至少是非常渴望有這種功能。

BitTorrent Sync簡稱btsync,是一個基於BitTorrent(著名P2P檔案分享協議)的免費跨平臺同步工具。與傳統BitTorrent客戶端不同的是,btsync可以在不同作業系統及裝置之間加密資料傳輸和基於自動生成的金鑰來授予訪問共享檔案的許可權。

更具體點,當你想要通過btsync共享一些檔案或資料夾,相應的讀/寫金鑰(所謂的密碼)就建立好了。這些金鑰可以通過HTTPS連結,電子郵件,二維碼等在不同的裝置間共享傳遞。一旦兩臺裝置通過一個金鑰配對成功,其所對應的內容將會直接在其間同步。如果沒有事先設定,傳輸將不會有檔案大小和速度的限制。你可以在btsync中建立賬號,這樣你可以通過 web 介面來建立和管理通過網路分享的金鑰和檔案。

如何使用btsync通過網路實現計算機間的檔案共享

BitTorrent Sync可以在許多的作業系統上執行,包括Linux,MacOS X,Windows,在 Android和iOS上也可以使用。在這裡,我們將教你在Linux環境(一臺家用伺服器)與Windows環境(一臺膝上型電腦)之間如何使用BitTorrent Sync來同步檔案。

Linux下安裝btsync

BitTorrent Sync可以在專案主頁直接下載。由於Windows版本的BitTorrent Syn安裝起來十分簡單,所以我們假設筆記本上已經安裝了。我們把焦點放到Linux伺服器上的安裝和配置。

在下載頁面中選擇你的系統架構,右鍵相應連結,複製連線地址(或者類似的功能,不同瀏覽器可能不同),將連結貼上到在終端中用wget下載,如下:

64位Linux:

# wget http://download.getsyncapp.com/endpoint/btsync/os/linux-x64/track/stable

32位Linux:

# wget http://download.getsyncapp.com/endpoint/btsync/os/linux-i386/track/stable

如何使用btsync通過網路實現計算機間的檔案共享

下載完成後,把包中內容解壓到你專門建立的目錄中,為了完成這些:

# cd /usr/local/bin
# mkdir btsync
# tar xzf stable -C btsync

如何使用btsync通過網路實現計算機間的檔案共享

現在你可以選擇將/usr/local/bin/btsync新增到環境變數PATH中去。

export PATH=$PATH:/usr/local/bin/btsync

或者在該資料夾中執行btsync的二進位制檔案。我們推薦使用第一種方式,雖需要少量的輸入但更容易記憶。

配置btsync

btsync帶有一個內建的網路伺服器,用作其管理介面。想要使用這個介面你需要建立一個配置檔案。你可以使用以下命令來建立:

# btsync --dump-sample-config > btsync.config

然後使用你最常用的編輯器對btsync.config檔案的(webui部分)作以下修改

"listen" : "0.0.0.0:8888",
"login" : "yourusername",
"password" : "yourpassword"

你可以選擇任何使用者名稱和密碼。

如何使用btsync通過網路實現計算機間的檔案共享

如果你將來想要優化一下它的配置,可以看一下 /usr/local/bin/btsync 目錄下的 README 檔案,不過現在我們先繼續下面的步驟。

第一次執行btsync

作為一個系統的最高執行者我們需要依賴日誌檔案!所以在我們啟動btsync之前,我們將先為btsync建立一個日誌檔案。

# touch /var/log/btsync.log

最後,讓我們啟動btsync:

# btsync --config /usr/local/bin/btsync/btsync.config --log /var/log/btsync.log

如何使用btsync通過網路實現計算機間的檔案共享

現在在你的瀏覽器中輸入正在執行的btsync所監聽的伺服器IP地址和埠(我這是192.168.0.15:8888),同意其隱私政策,條款和終端使用者許可協議:

如何使用btsync通過網路實現計算機間的檔案共享

這樣頁面就會轉到你安裝的btsync主頁:

如何使用btsync通過網路實現計算機間的檔案共享

點選新增資料夾並在你的檔案系統中選擇一個你想要分享的目錄,在我們的例子中,我們使用的是/btsync:

如何使用btsync通過網路實現計算機間的檔案共享

現在這樣就夠了。在執行接下來的步驟之前,請先在Windows主機(或你想使用的其他Linux裝置)上安裝BitTorrent Sync。

btsync分享檔案

這個視訊(需要翻牆)展示瞭如何在安裝Windows8的電腦[192.168.0.106]上分享現有的資料夾。在新增好想要同步的資料夾後,你會得到它的金鑰,通過“Enter a key or link”選單(上面的圖已經展示過了)新增到你安裝到的Linux機器上,並開始同步。

現在用別的裝置試試吧;找一個想要分享的資料夾或是一些檔案,並通過Linux伺服器的網路介面將金鑰匯入到你安裝的“中央”btsync中。

以常規使用者開機自動執行btsync

你們可能注意到了,視訊中在同步檔案時是使用’root’組的使用者建立/btsync目錄的。那是因為我們使用超級使用者手動啟動BitTorrent Sync的原因。在通常情況下,你會希望它開機自動使用無許可權使用者(www_data或是專門為此建立的賬戶,例如btsync)啟動。

所以,我們建立了一個叫做btsync的使用者,並在/etc/rc.local檔案(exit 0 這一行前)新增如下欄位:

sudo -u btsync /usr/local/bin/btsync/btsync --config /usr/local/bin/btsync/btsync.config --log /var/log/btsync.log

最後,建立pid檔案:

# touch /usr/local/bin/btsync/.sync/sync.pid

並遞迴更改 /usr/local/bin/btsync的所屬使用者:

# chown -R btsync:root /usr/local/bin/btsync

現在重啟試試,看看btsync是否正在由預期中的使用者執行:

如何使用btsync通過網路實現計算機間的檔案共享

基於你選擇的發行版不同,你可能找到不同的方式來開機自啟動btsync。在本教程中,我選擇rc.local的方式是因為它在不同發行版中都可使用。

尾註

如你所見,BitTorrent Sync對你而言幾乎就像一個無伺服器的Dropbox。我說“幾乎”的原因是:當你在區域網內同步資料時,同步在兩個裝置之間直接進行。然而如果你想要跨網段同步資料,並且你的裝置可能要穿過防火牆的限制來配對,那就只能通過一個提供BitTorrent的第三方中繼伺服器來完成同步傳輸。雖然聲稱傳輸經過 AES加密,你還是可能會遇到不想發生的狀況。為了你的隱私著想,務必在你共享的每個資料夾中關掉中繼/跟蹤選項。

希望這些對你有用!分享愉快!

相關文章