BitTorrent Sync使用方法

     BitTorrent Sync是一個簡單的文件傳輸工具,他使用p2p協議傳輸文件,以最大的安全度、網絡帶寬、存儲能力傳輸文件。文件經過p2p協議傳輸,所以每個連接上的電腦都同時是客戶端和服務端。設備在同步時是直接相連的,你能夠經過udp、nat轉換、upnp端口映射、中繼服務器等創建連接。若是你的網絡是本地網絡,BitTorrent Sync在同步時不會使用外部網絡。全部在設備之間的傳輸都是通過AES加密的。 linux

    BitTorrent Sync能夠在windows、mac、linux上使用,本文主要是在linux上使用,在linux平臺上BitTorrent Sync是很好安裝的,從官方根據平臺類型下載好你須要的tar包以後,在linux服務器上解壓便可看到一個btsync二進制文件,執行./btsync便可運行。BitTorrent Sync自帶了一個WEB UI界面,你能夠經過你本機的ip:8888/gui來訪問,端口都是能夠修改的,在第一次訪問UI界面時是不須要認證的,不過仍是建議設置密碼認證。不過我仍是喜歡CLI的管理方式。執行./btsync --help便可看到CLI的使用方式。 web

    BitTorrent Sync還有一個用戶藉口,經過它你能夠知道連接了哪些設備、那個目錄在同步、傳輸速度、上傳/下載歷史、性能等等。這些數據在WEB UI都有直觀的顯示,可是在CLI卻沒有相關信息的顯示,不過在默認文件裏面有個sql庫,估計是存在這裏面的。 sql

    在mac和windows都有圖形化的界面,裏面能夠設置一些高級屬性,雖然linux也有WEB UI,可是裏面沒有設置高級屬性的地方。linux的高級屬性能夠寫在配置文件中。可是默認的包解壓後並無配置文件的例子,經過./btsync --dump-sample-config能夠打印出一個自帶的簡單配置文件,配置文件時json格式的。如下的高級參數並無在簡單配置文件中顯示,不過你能夠加入他們,後面跟有默認值。 shell

高級參數有以下: json

disk_low_priority:true  設置在磁盤上操做文件的優先級,若是設置爲false,在同步文件時讀寫文件將會採用最高速度和優先級,不過這樣會影響其餘應用的性能。

folder_rescan_interval:600  設置掃描目錄的時間間隔,單位爲秒

lan_encrypt_data:true  若是設置爲ture,則在本地網絡傳輸時會採用加密傳輸。

lan_use_tcp:false  若是設置爲ture,在本地網絡同步會採用tcp傳輸,而不是採用udp傳輸。注意:在LAN中禁止加密並採用tcp傳輸,會增長傳輸速度。

rate_limit_local_peers:false  申請在本地網絡的peers直接限速傳輸,默認沒有在LAN裏面限速

send_buf_size:5  在發送文件時可使用的發送緩存,能夠設置1~100M

recv_buf_size:5  在接收文件時可使用的接收緩存,能夠設置1~100M

sync_max_time_diff:600  同步的設備之間的時間差異

sync_trash_ttl:30  設置多少天以後自動刪除.SyncArchive目錄中的文件

max_file_size_diff_for_patching:1000

max_file_size_for_versioning:1000  版本控制的一個參數,不瞭解...

    BitTorrent Sync還支持文件過濾,若是你有一些文件不想被同步,你可使用.SyncIgnore,.SyncIgnore是一個UTF-8編碼的txt文件,裏面你能夠定義單個文件,路徑,以及規則,他支持簡單的「?」和「*」匹配。 windows

下面開始使用(10.20.112.26) 瀏覽器

1 首先就是去官網下載tar包,若是連官網都懶得去,能夠用下面的方法 緩存

add-apt-repository ppa:tuxpoldo/btsync
aptitude update
aptitude install btsync

   下載好btsync_glibc23_x64.tar.gz後,在linux下面直接解壓,會看到一個btsync二進制文件和LICENSE.TXT文件,除此以外沒什麼了,很簡單啊... 安全

2 啓動btsync 服務器

  直接執行./btsync便可

3 先看看WEB UI界面,在瀏覽器中輸入10.20.112.26:8888/gui


界面看起來簡單清爽,不過沒有在win/mac下的配置項多啊,中文支持不錯,點擊preferences可設置


既然在linux下使用,CLI確定是首選項,因此下面主要介紹經過配置文件管理BitTorrent Sync

4 BitTorrent Sync的tar包中默認沒有配置文件的,不過能夠打印出內部自帶的簡單配置文件,./btsync --dump-sample-config

{ 
#定義設備名稱,通常寫主機名或者IP
  "device_name": "My Sync Device",

#是使用隨機端口仍是固定端口,0表示隨機
  "listening_port" : 0,                       
  
#storage_path包含一些運行時產生的狀態文件,若是沒有定義,則會在二進制命令運行的目錄下產生一個.sync隱藏目錄
  "storage_path" : "/home/user/.sync",

#定義pid文件的路徑
  "pid_file" : "/var/run/btsync/btsync.pid",

#是否檢查文件更新
  "check_for_updates" : true, 

#使用UPnP進行端口映射
  "use_upnp" : true,                              

#是否對上傳/下載進行限速,0表示不限速
  "download_limit" : 0,                       
  "upload_limit" : 0, 

  "webui" :
  {
#若是去掉listen項,則表示禁用WEB UI
    "listen" : "0.0.0.0:8888",

#若是去掉login/password,則表示不用驗證
    "login" : "admin",
    "password" : "password"
  },


#若是你在配置文件中設置了shared folders,則WEB UI中的會被禁止,配置文件中的會覆蓋UI中設置的。
  "shared_folders" :
  [
    {

#你的secret,可使用--generate-secret參數生成
      "secret" : "MY_SECRET_1",                  

#同步的目錄
      "dir" : "/home/user/bittorrent/sync_test", 

#是否使用中繼服務器
      "use_relay_server" : true,

#是否使用tracker服務器
      "use_tracker" : true,

#是否使用dht 
      "use_dht" : false,

#
      "search_lan" : true,

#是否自動刪除文件
      "use_sync_trash" : true,

#設置不用查找就能夠直接鏈接的機器   
      "known_hosts" :
      [
        "192.168.1.2:44444"
      ]
    }
  ]

}
5 開始試驗(10.20.112.26/27)

10.20.112.26的配置文件btsync.conf以下(server):

{ 
  "device_name": "10.20.112.26",
  "listening_port" : 9999,                      
  "storage_path" : "/opt/btsync_server/file",
  "pid_file" : "/opt/btsync_server/file/btsync.pid",
  "check_for_updates" : true, 
  "use_upnp" : false,                            
  "download_limit" : 0,                       
  "upload_limit" : 0, 

  "folder_rescan_interval" : 5,
  "lan_encrypt_data" : false,
  "lan_use_tcp" : true,

  "webui" :
  {
  },

  "shared_folders" :
  [
    {
      "secret" : "AXZ46VPZZ7PRVHPPFBHEO7JEXFFVABC4J",                   
      "dir" : "/opt/data", 

      "use_relay_server" : true,
      "use_tracker" : true, 
      "use_dht" : false,
      "search_lan" : true,
      "use_sync_trash" : true
    }
  ]
}

執行./btsync --config ./btsync.conf便可啓動

10.20.112.27的配置文件以下(client):
 
{ 
  "device_name": "10.20.112.27",
  "listening_port" : 9999,                      
  "storage_path" : "/opt/btsync_client/file",
  "pid_file" : "/opt/btsync_client/file/btsync.pid",
  "check_for_updates" : true, 
  "use_upnp" : false,                            
  "download_limit" : 0,                       
  "upload_limit" : 0, 

  "folder_rescan_interval" : 5,
  "lan_encrypt_data" : false,
  "lan_use_tcp" : true,

  "webui" :
  {
  },

  "shared_folders" :
  [
    {
      "secret" : "AXZ46VPZZ7PRVHPPFBHEO7JEXFFVABC4J",                   
      "dir" : "/opt/data", 

      "use_relay_server" : true,
      "use_tracker" : true, 
      "use_dht" : false,
      "search_lan" : true,
      "use_sync_trash" : true,
      "known_hosts" :
      [
        "10.20.112.26:9999"
      ]
    }
  ]
}

執行./btsync --config ./btsync.conf便可啓動

    筆記本實在是開不起第三臺虛擬機了,只能用這兩臺演示怎麼使用,徹底顯示不出BT的威力啊,不過本文就是講解怎麼在linux利用BT協議發送文件,若是有大量的機器要發送文件,BT協議仍是很不錯的。
相關文章
相關標籤/搜索