开源文件同步工具Syncthing p2p 软路由安装

是一款点对点p2p同步文件的工具,以前的公有云,迫于各方压力,如国内众多网盘都已经进行了收割模式,网速和安全大不如前。

所以采用自行创建私有云来备份文件保证安全极其重要。

常见的同步工具有 NextCloud、Syncthing、Resilio(BTSync)

NextCloud 私人网盘,属于c/s模式,中心服务器要求高。

ResilioSync 基于 BT 的同步软件,封锁比较严重。

Syncthing 开源免费的文件同步系统,支持Windows,linux,android,macos

Syncthing 不依赖中心的分布式服务器,如果有公网 IP 节点那么会走直连同步,否则走中继。

Syncthing 有不少免费开放的公共中继节点可惜都在海外,速度较慢。你也可以搭建一个私有中继服务。

开源地址:

https://github.com/syncthing/syncthing/

安装,因为我们软路由是

# 进入用于保存程序的目录
cd /mnt/sda5/
# 下载程序
wget https://github.com/syncthing/syncthing/releases/download/v1.16.0/syncthing-linux-amd64-v1.16.0.tar.gz
# 解压
tar -zxvf syncthing-linux-amd64-v1.16.0.tar.gz
# 为了方便整洁改个名字
mv syncthing-linux-amd64-v1.16.0 syncthing
# 给予执行权限
chmod +x syncthing/syncthing

然后 直接执行 syncthing 就能开启服务

新增任意位置执行

# 创建一个软链接,就可以在任何目录下执行了
ln -s /mnt/sda5/syncthing/syncthing /usr/bin/syncthing

新增开机自启

编辑 /etc/rc.local

syncthing -gui-address="0.0.0.0:8384" -home="/mnt/sda5/syncthing/conf" -logfile="/var/log/syncthing.log" -no-browser >/dev/null &

参数说明


gui-address 用于指定 Syncthing web 控制台的地址与端口,默认是 127.0.0.1 也就是只有路由器本机可以访问,我们电脑是访问不了的,改成 0.0.0.0 也就是任何人都可以访问。
home 用于指定配置文件存放位置。
logfile 用于指定日志文件存放位置。
no-browser 启动时不要自动打开 web 控制台。只对 GUI 系统有效,顺手加上就行了。
>/dev/null 将输出重定向到 dev/null,这是个特殊位置,相当于直接丢弃。也就是不要显示输出。
& 后台运行。

配置https访问等待续

其它平台

Windows

SyncTrayzor

https://github.com/canton7/SyncTrayzor/releases

MacOS

https://github.com/sieren/QSyncthingTray/releases

直接使用 homebrew 安装启动,并且可以开机自动启动,你也可以到这里 QSyncthingTray 下载 MacOS 的 GUI 版

brew install syncthing
启动服务(同时设置开机启动)

brew services start syncthing
停止服务(同时关闭自启)

brew services stop syncthing
手动启动(不会开机自启)

syncthing
启动进程后,可以用浏览器打开 http://localhost:8384/ 来查看 web 管理页

安装了 Entware 的路由器

下载最新的包,解压,移动到 /opt/bin/ 里,改权限

wget https://github.com/syncthing/syncthing/releases/download/v1.16.0/syncthing-linux-amd64-v1.16.0.tar.gz

tar xzvf ./syncthing-linux-amd64-v1.16.0.tar.gz

mv ./syncthing-linux-amd64-v1.16.0/syncthing /opt/bin/

chmod +x /opt/bin/syncthing

创建并编辑 /opt/etc/init.d/S92syncthing

#!/bin/sh
ENABLED=yes
PROCS=syncthing
ARGS="-home=/opt/etc/syncthing"
PREARGS=""
DESC=$PROCS
PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

if [ ! -d /opt/etc/syncthing ]; then
/opt/bin/syncthing -generate="/opt/etc/syncthing"
sed -i ‘s|127.0.0.1:8384|0.0.0.0:8384|’ /opt/etc/syncthing/config.xml
elif [[ -f /opt/etc/syncthing/config.xml -a “127.0.0.1:8384”==“127.0.0.1:8384” ]]; then
sed -i ‘s|127.0.0.1:8384|0.0.0.0:8384|’ /opt/etc/syncthing/config.xml
fi

. /opt/etc/init.d/rc.func

然后给权限

chmod +x /opt/etc/init.d/S92syncthing

用法: /opt/etc/init.d/S92syncthing (start|stop|restart|check)

启动服务就能在浏览器打开 路由器IP:8384 例如 192.168.1.1:8384 打开管理页了

随后进入后台设置默认用户密码,配置同步文件夹,设置远程访问。

如果是小米路由R3D root后安装了Entware以后可以用下面命令安装

opkg install syncthing

点这里了解 小米路由R3D实现entware环境的安装教程

点赞

发表评论

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