BitTorrent Sync使用方法

原创
2014/02/22 10:00
阅读数 2.5W

     BitTorrent Sync是一个简单的文件传输工具,他使用p2p协议传输文件,以最大的安全度、网络带宽、存储能力传输文件。文件通过p2p协议传输,因此每一个链接上的电脑都同时是客户端和服务端。设备在同步时是直接相连的,你可以通过udp、nat转换、upnp端口映射、中继服务器等建立链接。如果你的网络是本地网络,BitTorrent Sync在同步时不会使用外部网络。所有在设备之间的传输都是经过AES加密的。

    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的使用方式。

    BitTorrent Sync还有一个用户借口,通过它你可以知道链接了哪些设备、那个目录在同步、传输速度、上传/下载历史、性能等等。这些数据在WEB UI都有直观的显示,但是在CLI却没有相关信息的显示,不过在默认文件里面有个sql库,估计是存在这里面的。

    在mac和windows都有图形化的界面,里面可以设置一些高级属性,虽然linux也有WEB UI,但是里面没有设置高级属性的地方。linux的高级属性可以写在配置文件中。但是默认的包解压后并没有配置文件的例子,通过./btsync --dump-sample-config可以打印出一个自带的简单配置文件,配置文件时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文件,里面你可以定义单个文件,路径,以及规则,他支持简单的“?”和“*”匹配。

下面开始使用(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协议还是很不错的。



展开阅读全文
打赏
1
6 收藏
分享
加载中

引用来自“阿泉”的评论

我运行 btsync后,系统也提示8888端口 但是为什么用浏览器ip:8888无法浏览,求指教!!!
默认绑定只能在本地访问,使用 ./btsync --webui.listen 0.0.0.0:8899
2016/05/02 21:44
回复
举报
China_OS博主

引用来自“阿泉”的评论

我运行 btsync后,系统也提示8888端口 但是为什么用浏览器ip:8888无法浏览,求指教!!!
防火墙看看,还有就是8888是不是就是监听在你访问的那个ip地址上
2016/03/23 08:34
回复
举报
我运行 btsync后,系统也提示8888端口 但是为什么用浏览器ip:8888无法浏览,求指教!!!
2016/03/22 23:53
回复
举报
更多评论
打赏
3 评论
6 收藏
1
分享
返回顶部
顶部