Syncthing来同步服务器数据到本地

缘由

服务器端的数据有多重要我就不说了,毕竟是删过库的人,明白那种崩溃的感觉。后来我尝试把数据放到Github,但看到那令人尴尬的提交图时,感觉装逼了,然后就默默的寻找其它方法,我自己一直在用BitTorrent Sync来做分布式网盘从互联网获取好的资源,去官网发现也可以安装在自己的服务器端来进行同步使用,但苦逼的时一直找不到节点,使用了代理以及分享的DHA什么的,也是0效果。后来看使用某教程最后提到了Syncthing这个工具,然后就种草了。

file

官网

维基百科简介

Syncthing是一个开源的文件同步客户端与服务器软件,采用Go语言编写。它可以在本地网络上的设备之间或通过Internet在远程设备之间同步文件,使用了其独有的对等自由块交换协议。源代码托管在GitHub上

跨平台支持

file

使用方法

服务器端

服务器端配置

# 进入tmp临时存放文件夹
cd /tmp

# 下载syncthing,注意查看版本;
wget https://github.com/syncthing/syncthing/releases/download/v1.3.1/syncthing-linux-amd64-v1.3.1.tar.gz

# 解压
tar xzvf syncthing-linux-amd64-v1.3.1.tar.gz

# 进入解压文件夹
cd syncthing-linux-amd64-v1.3.1

# 将syncthing二进制程序复制到/usr/local/bin目录,然后就可以通过“syncthing”命令运行syncthing了
cp syncthing /usr/local/bin
  • 运行syncthing
    syncthing
  • 配置修改 Ctrl + C关闭syncthing,初次运行syncthing会在当前用户的用户目录下生成配置文件,比如现在使用的是root用户:
    vim /root/.config/syncthing/config.xml

    大概在第72行找到下面这一行(8384为默认的端口,可自行选择更改

    127.0.0.1:8384

    改成

    0.0.0.0:8384
  • 后台运行该程序
    nohup syncthing &
  • 开启防火墙这个看你自己是什么系统了,注意端口要与上面一致!

服务器客户端使用

你的IP:8384(端口)即可访问到后台界面

  • 语言和密码设置,这个没啥讲的,语言设置为中文,密码是为了防止其他人知道你端口后就直接进入你后台了;
  • 获取ID,操作如下图步骤(电脑端要用)
    file

电脑端

  • 软件下载地址 | GITHUB | 我使用的GITHUB下载的,没有安装的同上
  • 添加远程设备后填入服务器的ID
    file
  • 服务器会有一个确认来添加电脑端的设备;具体我添加过了就不演示了;
    file

文件传输

  • 服务器添加文件夹,标签任意填(我自己是填的是该文件夹的作用),并在共享里面选择已经确认过的设备;
    file
  • 可以在高级里面选择要传输的方式;
  • 客户端确认接收并配置本地的设置(同上面差不多);

file

  • 其它功能就自己慢慢探索吧!
  • 如果服务器被墙需要设置代理,同时我自己使用感觉每次都有一个延迟过程,不会立马进行文件同步;第一次如果同步文件夹里面的文件特别多,扫描并等待特别漫长;

替代产品 | BTsync

我自己配置失败连接不上,可能时国内的互联网环境导致的,我把自己当时找到的资源放置如下;

BTsync使用教程

CentOS 安装Resilio Sync (BTSync) 文件同步软件

如何解决 Resilio Sync 无法正常同步的问题

参考

如果感觉不是很明白,可以参考以下两篇文章;


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *