赞
踩
Syncthing是一个开源文件同步工具,可以在多台设备之间实时同步文件或文件夹。它可以帮助你自由地选择数据的存储位置、数据是否被第三方共享以及同步的数据如何在互联网上传输。
Syncthing使用P2P技术实现数据在设备间的同步,和传统的网盘不同,数据在同步的过程中并不会上传到某个云服务器上,而是直接在你所指定的几个设备之间传输,也只会存储于你所信任的本地设备,确保了隐私与安全;同时,Syncthing使用了类似torrent的协议,你用于同步的设备越多,数据的传输速度也就越快。支持公网与局域网搭建、支持单双向同步与历史版本控制。支持Android、Linux、Windows、Mac等系统,且服务器资源占用小。
Syncthing的主要功能是用来进行文件传输,我需要对多台不同系统的(windows,linux)服务器的数据进行备份,当前测试使用Syncthing来进行两台Centos7服务器数据备份,注意在不同服务器使用Syncthing时需要保持版本一致。
Syncthing官网:点击进入(https://syncthing.net/downloads/)
使用版本 v1.23.7
上传下载的syncthing-linux-amd64-v1.23.7.tar.gz文件至Centos7服务器指定目录,解压并安装启动,启动后默认只支持本地使用127.0.0.1:8443访问。
mkdir /home/syncthing
cd /home/syncthing
tar -zxvf syncthing-linux-amd64-v1.23.7.tar.gz
cd syncthing-linux-amd64-v1.23.7
./syncthing
syncthing默认访问地址及端口为 127.0.0.1:8384
修改syncthing配置文件放开ip访问限制,syncthing默认仅支持本机访问web管理端
vim /root/.config/syncthing/config.xml
找到以下位置,将127.0.0.1:8384
修改成 [指定IP]:8384
或0.0.0.1:8384
,建议指定IP更安全
8384 (TCP)是Web访问控制端口
22000 (TCP) 是节点访问端口
21027 (UDP) 关于本地发现的端口
44647 (UDP)
37269 (UDP)
#检测防火墙状态
systemctl status firewalld
#开启防火墙8384 、22000 tcp端口若防火墙禁用的请略过命令)
firewall-cmd --zone=public --add-port=8384/tcp --permanent
firewall-cmd --zone=public --add-port=22000/tcp --permanent
#开启防火墙21027、44647、37269 udp端口
firewall-cmd --zone=public --add-port=21027/udp --permanent
firewall-cmd --zone=public --add-port=44647/udp --permanent
firewall-cmd --zone=public --add-port=37269/udp --permanent
###(若只开放8384端口,后台访问正常,后续服务器之间连接同步数据,会连接失败。(只开放8384 22000 21027 测试也可以数据同步 22000 21027 端口修改待测试 ))
#重启防火墙
firewall-cmd --reload
syncthing安装目录 临时启动syncthing ctrl+c退出程序
./syncthing
syncthing安装完成之后会在安装目录生成/etc目录,里面包含各个系统的开机自启动设置模板参数。我的Centos7服务器使用systemd服务管理器设置开机自启动。
syncthing自带有syncthing@.service文件 在syncthing安装目录下的/etc/linux-systemd/system/
重命名syncthing@.service为syncthing@root.service
(@后面改为当前系统登录的用户名,我是root用户登录,注意你的syncthing安装路径,在syncthing安装路径下查找文件)
将重命名的syncthing@root.service
文件复制至/etc/systemd/system下
cp syncthing@root.service /etc/systemd/system/
切换目录至 /etc/systemd/system/
cd /etc/systemd/system/
修改 syncthing@root.service配置文件内容
vim syncthing@root.service
将ExecStart 的路径修改为syncthing的安装路径
重启systemd服务
systemctl daemon-reload
将syncthing@root.service设置开机自启动
systemctl enable /etc/systemd/system/syncthing@root.service
syncthing@root.service服务启动
systemctl start syncthing@root.service
syncthing@root.service服务状态查看
systemctl status syncthing@root.service
systemctl start syncthing@root.service
根据上面的syncthing安装方法,给两台Centos7服务器进行安装配置,测试局域网数据备份同步效果,服务器信息如下
数据源服务器 192.168.31.221 centos7.7 /home/data/ syncthing-1.23.7
备份服务器 192.168.31.117 centos7.7 /home/backup/ syncthing-1.23.7
基本配置步骤就是数据源服务器添加备份服务器设备,两台服务器进行通信,服务器设备添加成功后,两台服务器成功通信,将数据源服务器的文件夹共享给备份服务器指定目录,数据源服务器监听共享文件夹变化发送数据,备份服务器文件夹接收数据。
打开浏览器,输入http://192.168.31.221:8384/ ,进入web页面管理端,进行数据源服务器相关配置。
(1)设置设备名称(数据源服务器/备份服务器)
(2)设置图形化用户界面用户名及密码
(3)配置局域网本地发现
(4)备份服务器参考上面数据源服务器进行基本配置
(1)备份服务器完成上述基础配置,查看设备ID
(2)数据源服务器添加远程设备(备份服务器)
(3)备份服务器添加源服务器的添加请求。
(1)源数据服务器添加共享文件夹 并配置文件夹路径
(2)备份服务器收到添加共享文件夹确认请求,点击确定添加共享文件夹
参考文章1: linux间文件实时同步(syncthing) —带历史版本“后悔药”
https://blog.csdn.net/qq_41355314/article/details/116694273?ops_request_misc=&request_id=&biz_id=102&utm_term=syncthing%E5%86%85%E7%BD%91%E5%90%8C%E6%AD%A5&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-116694273.142^v93^koosearch_v1&spm=1018.2226.3001.4187
参考文章2: 开源Linux、Windows服务器数据备份工具选型分析(二) Syncthing
https://blog.csdn.net/xiguashixiaoyu/article/details/115195790?spm=1001.2014.3001.5502
参考文章3:centos8使用syncthing自启动的两种方式
https://blog.csdn.net/zhujiarunm/article/details/124454841
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。