假如程序代码和注释不一致, 那么很可能两者都是错的!
--Norm Schryer

用BitTorrent Sync在5分钟内打造类似Dropbox的私有云存储服务

本文针对具有基本电脑操作技能用户,介绍使用BitTorrent Sync (以下简称BT Sync)打造类似Dropbox的私有云存储服务(类似网盘的功能), 具体实现如下功能:

  1. 多个电脑和手机之间相互同步文件;
  2. 可以给其他人分享文件;
  3. 手机照片可以自动同步到其它电脑/服务器上;
  4. 除了不能直接从网页上下载文件之外,它几乎可以替代dropbox。

(如果你觉得没必要了解BT Sync特点,可以直接跳过下一小节,阅读后面的安装和使用介绍部分。不喜欢听我啰嗦的高级用户,可以直接参照文末的总结,自己完成安装配置。)

 

BT Sync特点

BitTorrent Sync 是一款简单强大的“绿色”软件,无需经过繁琐安装过程即可直接运行。操作和设置也几乎没有任何难度,具有电脑基本操作的同学就可以轻松驾驭。

具体来说,BT Sync是一款分布式文件同步工具。从名字可以看出,他跟BT下载一样,都出自BitTorrent公司。具有如下优点:

  • 分布式,无需中心节点服务器,同时运行的节点越多,文件同步速度越快;
  • 安全性高,同步文件的传输过程端到端加密,即使是中转服务器和你的网络服务商也无法知道你的文件内容;
  • 点对点传输,支持通过互联网和没有互联网连接的局域网内部相互同步文件;
  • 几乎支持所有的操作系统和平台(Linux,iOS,Windows,Mac,Windows Phone…);
  • 存储空间没有限制,限制在于节点硬盘的大小;
  • 对文件大小没有限制。

为了保障可以随时随地同步文件,避免出现没有节点的情况(类似BT下载的时候没有源)。需要保证一个始终在线的节点(姑且称之为“源节点”)。要做到这点,你需要一个始终开机并且联网的电脑,该电脑无需公网IP。如果你正好有一台云服务器,你可以选择将这个源节点部署(安装运行)其中。其它节点只需安装相应平台客户端即可和这个服务器随时随地同步文件。

如果你喜欢折腾,使用一个低功耗的(功耗和智能手机差不多)树莓派+一块硬盘7x24运行BT Sync,也是一个很好的“源节点”解决方案。有时间我可以专门写一篇关于树莓派的文章,敬请期待。

不过,如果你不要求能够随时随地同步文件,就完全没有必要有一台服务器或者一直开着的电脑。当你想同步文件的时候打开电脑即可。如果要同步的这两个节点都在局域网内(相同的wifi),甚至都不要求该局域网有公网连接(前面说过BT Sync的特点:分布式,无需中心节点服务器,局域网使用点对点传输,速度飞快)。

 

安装和使用

下面以在CentOS 6.5上部署(安装运行)源节点为例(如果你打算把“源节点”运行在Windows上,可以忽略下面步骤中Linux命令部分,因Windows下只需直接双击运行下载的exe文件即可):

  1. 下载并解压BT Sync For linux-x64
    如果你打算部署的源节点服务器是其它系统或平台,可以在官方网站下载相应的文件,几乎支持所有的系统和平台。
    wget https://download-cdn.getsync.com/stable/linux-x64/BitTorrent-Sync_x64.tar.gz
    tar -xzf BitTorrent-Sync_x64.tar.gz

  2. BT Sync是一个“绿色”软件,无需安装即可直接运行
    ./btsync
    默认端口号是8888。此时,你只要访问:http://your-server-name:8888就能进入系统(本地电脑请使用http://localhost:8888),首次进入需要设定用户名密码。

    BT Sync首次进入设定用户名密码
     

    如果你需要更改端口号和其它设置,可以生成一个配置文件,如果在Windows下,请在cmd中执行。
    ./btsync --dump-sample-config > btsync.config
    上述命令会在当前文件夹生成一个btsync.config,要使用这个配置文件,如果btsync已经运行,请先结束该任务(kill -9 pid, Windows中在任务管理器中直接结束任务),之后运行加上配置文件的命令行参数:
    ./btsync --config btsync.config

  3. 添加同步文件保存路径和同步其它文件夹
    添加同步文件路径之后可以让其它客户端[1]同步其中的内容。

    BT Sync 常用操作和设置
     

    如果要同步其它节点,可以进入设置图标->manual connection,输入相应的同步密钥(code)或链接即可。不过,在作为备份使用的服务器源节点上同步其它文件夹意义不大。我们之所以设置一个源节是用来保障其它客户端节点在没有源的时候的一种备份。

  4. 查看分享同步密钥或者分享二维码
    同步密钥(code)相当于进入一个同步目录的钥匙,每个参与同步的目录,都有对应的密钥。你只有拿到这个密钥,才能同步该目录下文件。不同的读写权限对应有不同的密钥或二维码。你甚至可以通过URL链接共享文件(无需公网IP)。唯一可惜的是不能在浏览器直接下载文件,会提示对方安装BT Sync。

    BT Sync 分享文件
     
  5. 安装其它客户端
    iOS客户端可以直接从App Store里面找到,其它系统和平台客户端可以从[官方网站]下载到。
    值得提醒的是手机客户端可以备份照片同步到源节点服务器上,这个可以省去购买iCloud空间的费用。如果你电脑上也安装并且运行了BT Sync,手机中的照片也会自动同步到该电脑中去。

BT Sync iOS客户端

 

最后总结下整个安装配置过程:

  • 在电脑或者服务器上或者树莓派上,下载安装对应版本的BT Sync,无需安装配置直接运行;
  • 浏览器内打开http://server-name:8888(本地电脑请使用http://localhost:8888)设置密码和添加同步文件夹(目标文件存储位置)并且得到相应的同步密钥(code);
  • 在手机或者其它电脑安装BT Sync,输入上述步骤中的同步密钥(code)。注意要使用具有读写权限的密钥(code),才能让其它客户端添加文件。手机上可以扫二维码加入,无需输入密钥(code)。

[1]:注意只是为了方便一般用户理解,使用了“客户端这”这个词,下同。实际上,任何客户端和这个节点地位都是对等的,二者之间可以相互同步文件。 ↩︎

 

版权声明
本博客所有文章皆为原创,作者保留所有版权。转载必须保证全文完整和包含本声明,并以超链接形式注明出处 http://www.macode.net/bittorrent-sync-…te-cloud-stroage/

发表评论

电子邮件地址不会被公开。 必填项已用*标注