记录一款开源数据同步工具syncthing

最近在为些共有云迁移的问题而头痛,数据的不间断同步成为了需要考虑的首要问题,如何能够更加便利的帮助我们完成这项工作呢?Sync,sync,syncsomething,无意间发现这款貌似已经很流行的软件(只可惜我刚注意到它,还好为时不晚)。我迫不及待的自己安装测试了下,效果很好,大概总结有以下优点:

1、跨平台性,支持linux,windows,mac,安卓等市面主流系统;
2、安全性,所有的文件传输均默认通过TSL控制,加密传输,避免文件泄露;
3、实时性,文件的检测机制可以人性化调节,任意的时间间隔进行文件比对;
4、双向或单向同步任意控制,可以满足所有的传输需求;

安装和简单的配置使用过程:

实验环境:两台linux服务器
linux1:本地内网虚拟机172.20.6.173
linux2:公网服务器192.x.x.x

使用 wget 命令在两台服务器上分别下载最新版本 Syncthing 软件包:

wget https://github.com/syncthing/syncthing/releases/download/v0.14.32/syncthing-linux-amd64-v0.14.32.tar.gz

使用 tar 命令解压软件包:

tar zxvf syncthing-linux-amd64-v0.14.32.tar.gz

将 syncthing 二进制文件复制到 /usr/bin 目录:

sudo cp syncthing-linux-amd64-v0.14.32/syncthing /usr/bin/

设置开机自启动

由于我们要将 syncthing 运行在云服务器上,且通常没有用户登录,因此,应该将Syncthing 注册为系统级服务。将系统级服务配置文件复制到 /etc/systemd/system 目录:
sudo cp syncthing-linux-amd64-v0.14.32/etc/linux-systemd/system/[email protected] /etc/systemd/system/

重命名服务配置文件:

mv /etc/systemd/system/[email protected]
/etc/systemd/system/[email protected]

添加自启动

systemctl enable [email protected]

启动

systemctl start [email protected]

注意:因为涉及到权限安全的问题,这里最好不要使用root用户直接运行syncthing工具,建议创建一个专门用于该工具的用户,例如:我创建的是syncthing。

配置 Syncthing

配置远程访问

由于 syncthing 默认只允许本地访问管理界面,为了实现通过互联网访问管理界面,需要修改 syncthing 的配置文件:
vim .config/syncthing/config.xml
将配置文件中的 <address>127.0.0.1:8384</address> 修改为<address>0.0.0.0:8384</address>。
现在就可以打开浏览器,使用 IP:8384 形式访问管理界面,例如,本例使用的云服务器公网 IP 为 172.20.6.173如下图

PS:这里需要注意的是我们的配置文件这部分是只有在先启动服务以后才会生成

设置身份认证

由于我们在上一步开放了远程访问,初次访问管理界面会显示类似下图的提示,要求设置登录管理界面的用户名和密码,点击 设置 按钮。

如下图所示,在设置界面中输入用户名和密码。
提示:同时建议将 启动浏览器 取消勾选,这个功能是当启动 syncthing 时自动激活浏览器打开管理界面。在云服务器上 syncthing 以服务模式运行不需此功能。

设置完毕保存后,会要求重启 syncthing,点击 重启 Syncthing 按钮即可。

重启完成后,管理界面会自动刷新,并要求身份验证,只有正确输入前面设置的用户名和密码才能进入管理界面。

同步的两台设备需要互相添加机器


syncthing有自己的版本控制及指定同步文件夹或者指定仅发送还是接受和发送
可以在.config/syncthing/config.xml配置文件中修改配置或者是在图形化的web面板中进行修改:


**

原文地址:http://blog.51cto.com/13528213/2124985

时间: 2024-11-05 19:28:43

记录一款开源数据同步工具syncthing的相关文章

开源数据同步工具:Lsyncd部署实录

[[email protected] ~]# yum install -y xinetd [[email protected] ~]# yum install rsync [[email protected] ~]# vi /etc/xinetd.d/rsync # default: off # description: The rsync server is a good addition to an ftp server, as it #       allows crc checksumm

Rsync数据同步工具应用指南

1.Rsync数据同步工具应用指南 简介Rsync的特性:Rsync的工作方式:Rsync命令同步选项参数:本地主机模式示例远程RPC模式示例 简介     Rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具.可使本地和远程两台或多台主机之间的数据快速复制同步镜像.远程备份的功能.这个功能类似ssh自带的scp命令,但又优于scp命令的功能,scp每次都是全量拷贝,而rsync可以增量拷贝.当然,Rsync还可以在本地主机的不同分区或目录之间全量及增量的

阿里云开源离线同步工具DataX3.0介绍

阿里云开源离线同步工具DataX3.0介绍 一. DataX3.0概览 ? DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL.Oracle等).HDFS.Hive.ODPS.HBase.FTP等各种异构数据源之间稳定高效的数据同步功能. 设计理念 为了解决异构数据源同步问题,DataX将复杂的网状的同步链路变成了星型数据链路,DataX作为中间传输载体负责连接各种数据源.当需要接入一个新的数据源的时候,只需要将此数据源对接到DataX,便能跟已有的数据源做到无缝数

第十六课----Rsync数据同步工具

1.1.1 什么是Rsync?Rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具.Rsync软件适用于unix/linux/windows等多种操作系统平台.1.1.2 Rsync简介? Rsync英文全称Remote synchronization,从软件的名称就可以看出来,Rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像,远程备份的功能,这个功能类似ssh带的scp命令,但又优于scp命令的功能,scp每次都是全量拷贝,而rsync可以

Linux的rsync远程数据同步工具

Rsync(remote synchronize) 是一个远程数据同步工具,可以使用"Rsync算法"同步本地和远程主机之间的文件. rsync的好处是只同步两个文件不同的部分,相同的部分不在传递.类似于增量备份, 这使的在服务器传递备份文件或者同步文件,比起scp工具要省好多时间. OS:ubuntu server 10.04 server:192.168.64.128 client:192.168.64.145 server 1.ubuntu  server 10.04默认已安装r

SQL数据库同步工具(开辟数据同步工具)2.0 中文免费版

SQL数据库同步工具(开辟数据同步工具)本系统分为客户端和服务器两个部分,其中客户端承担了系统绝大数事务,服务器只是简单的执行客户端传送的命令,属于典型的C/S胖客户端瘦服务器模式.这样设计的目的是为了减轻服务器的压力,让系统更加流畅. 本系统分为客户端和服务器两个部分,其中客户端承担了系统绝大数事务,服务器只是简单的执行客户端传送的命令,属于典型的C/S胖客户端瘦服务器模式.这样设计的目的是为了减轻服务器的压力,让系统更加流畅. 客户端负责采集分布数据库中的数据,然后汇总到服务器.客户端需要配

55种开源数据可视化工具简介

55种开源数据可视化工具简介 雪姬 2015-04-21 11:47:56 数据可视化 评论(2)   数据时代数据可视化成为理解和表达数据的有效甚至是唯一的手段. 一共56个,盘点最实用的大数据可视化分析工具 工欲善其事必先利其器,本文对55个流行的数据可视化工具开源协议,主页,文档,案例等资源的进行简单介绍,其中包括著名的D3.js,R,Gephi,Raphaël,Processing.js,Tableau Public,Google Chart Tools,Arbor.js等,资料来源ht

rsync远程数据同步工具应用

一直觉得rsync这个命令复杂不好用,一直在排斥这个工具,抱怨rsync功能简单又复杂难用,这些都不是rsync的问题,只是我不愿意去man这个工具的的帮助文档,其实rsync这个工具也没有想象中那么复杂难用:rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的"rsync算法"来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快. rsync是一个功能非常强大的工具,其命令

Linux系统备份还原工具4(rsync/数据同步工具)

rsync即是能备份系统也是数据同步的工具. 在Jenkins上可以使用rsync结合SSH的免密登录做数据同步和分发.这样一来可以达到部署全命令化,不需要依赖任何插件去实现. 命令参考:http://man.linuxde.net/rsync 说明: rsync命令 是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快. rsy