自建云盘系列——微力同步VerySync(能在国内使用的BTSync/Resilio Sync Home)

一.介绍

微力同步,或者叫VerySync,如果你在以前玩过BTSync,也经历了它在国内逐渐无法使用的过程,那么也许你会对这个有所了解,这个团队最早以提供国内能够访问的BTSync中继以及后来的修改版BTSync在圈子里扬名。在最终发现无论是中继还是修改终归不是一个彻底的解决办法之后,他们开始想办法搞了自己的一套同步

在 resilio sync 被和谐后 我们从发布改 hosts 教程,到改 DNS,接着自建跟踪代理服务器,到发布修改版以帮助大家能下载和分享自己喜欢的资源,感谢一直以来对微力支持的朋友,期间也有不少热心的朋友对本站做了一些资助,在此再次表示衷心感谢。

不过随着防火墙的升级,资源下载也是越来越困难了,resilio 官方对于防火墙也没有什么动作,各种技术修改手段对于普通用户也是有门槛,导致优秀的资源无法进行分享学习。

在百度网盘越来越慢,Resilio Sync 也无法使用,我一直在想找一些修复办法,最终我决定写一款类似的软件,来解决文件同步的问题,最终经过几个月的努力,在 10.1 期间和群里几位热心的朋友在做一些小的内部测试,终于有所成果,这里也感谢几位伙伴的付出和努力,@帝王包子 @翱翔 @清风 @青木幻月 。

因为重写了跟踪服务程序,所以我们的 KEY 和 Resilio Sync 是不兼容的,目前基本的同步功能都完成了,我们希望在未来我们有个资源转移计划,把 Resilio Sync 的资源转移到新的软件上来,毕境这个是我们国内的软件,有问题我们将能够更好的来调整。

目前我们只编译了 PC 版本,在稳定后我们将发布 NAS 和手机版。 欢迎大家测试,如果有好的建议和反馈请留言,或 QQ,或微信。感谢大家的支持。

这是引用当初微力发布第一版时候的话,现在其实在各个平台上都有了。

据说,微力同步是基于Syncthing制作的修改版,界面友好程度比较高,这点偏向于BTSync,不过最大的问题还是使用人数不是那么多,但是它已经在发布的这段时间内在国内被越来越多的人了解并使用了,各种论坛上每当有人求资源的时候也会有人喊一声让楼主用微力同步分享。

二.手动安装

各平台的下载地址——>传送门

除了IOS的大部分平台都有了,所以也不用太担心。

由于大部分平台都有安装程序,所以我这边就只介绍下Linux平台下的了

wget -O verysync.tgz http://verysync.com/download.php?platform=linux-amd64
tar xzf verysync.tgz
cd verysync-linux*
mv verysync /usr/bin/
#然后是防火墙,请确保你开放了22330的tcp和22331的udp,这两个用于传输数据,还有8886的tcp用于WebGUI
#如果你是ufw,请查看etc目录下的firewall-ufw目录,iptables使用我下面的命令,firewalld我就不管了
iptables -I INPUT -p tcp --dport 22330 -j ACCEPT
iptables -I INPUT -p udp --dport 22331 -j ACCEPT
iptables -I INPUT -p tcp --dport 8886 -j ACCEPT
iptables-save
service iptables save
#当然,如果你防火墙默认规则是ACCEPT那可以不管,CentOS默认的防火墙规则请使用如下命令清空
iptables -F
iptables-save
service iptables save
#接下来是启动脚本,这个就得看你系统了,大部分的在etc目录里都有,自己丢到对应系统的启动目录就OK,像CentOS6这样用SysVinit的请看下面
#增加用户
groupadd verysync
useradd verysync -g verysync -s /bin/false
#写入启动脚本
cat >>/etc/init.d/verysync<'EOF'
#! /bin/sh
### BEGIN INIT INFO
# Provides: verysync
# Required-Start: $local_fs $remote_fs $network
# Required-Stop: $local_fs $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: verysync
### END INIT INFO
 
NAME=verysync
 
DAEMON="/usr/bin/verysync"
DAEMON_RUN_NAME=$NAME
DAEMON_OPTS="-no-browser -no-restart -logflags=0"
 
RUN_AS="verysync"
 
LOGFILE=/var/log/$NAME.log
 
# Source (Debian|Redhat) function library.
for funcFile in '/lib/lsb/init-functions' '/etc/init.d/functions'; do
 if [ -f $funcFile ]; then
 . $funcFile
 fi
done
 
if hash start-stop-daemon 2>/dev/null; then
 DIST="Debian"
else
 DIST="RedHat"
fi
 
RETVAL=0
 
start() {
echo -n "Starting $NAME: "
 
PIDS=`pidof $DAEMON_RUN_NAME`
if [ -z "$PIDS" ]; then
 if [ "$DIST" = "Debian" ]; then
 start-stop-daemon -S -b -c $RUN_AS -x $DAEMON -- $DAEMON_OPTS >> $LOGFILE 2>&1
 else
 daemon --user $RUN_AS $DAEMON $DAEMON_OPTS >> /var/log/$NAME.log 2>&1 &
 fi
 
 if [ "$?" == "0" ]; then
 echo "ok"
 else
 echo "failed"
 fi
else
 echo "failed"
 echo "$NAME is already running"
 RETVAL=1
fi
 
return $RETVAL
}
 
stop() {
echo -n "Shutting down $NAME: "
 
PIDS=`pidof $DAEMON_RUN_NAME`
if [ -n "$PIDS" ]; then
 kill -15 $PIDS
 if [ "$?" == "0" ]; then
 echo "ok"
 else
 echo "failed"
 fi
else
 echo "failed"
 echo "$NAME is not running"
 RETVAL=1
fi
 
return $RETVAL 
}
 
status() {
PIDS=`pidof $DAEMON_RUN_NAME`
 if [ -n "$PIDS" ]; then
 echo "$NAME is running"
 else
 echo "$NAME is not running"
 fi
return 0
}
 
case "$1" in
 start)
 start
 ;;
 stop)
 stop
 ;;
 status)
 status
 ;;
 restart)
 stop
 sleep 2
 start
 ;;
 *)
 echo "Usage: $NAME {start|stop|status|restart}"
 ;;
esac
 
exit $RETVAL
EOF
 
#启动
service verysync start

由于某些原因,微力同步没有按照syncthing一样放一个config.xml来方便修改配置,所以我们只能通过WebGUI来修改,这就带来了一定的麻烦,因为默认监听地址为localhost,所以如果我们在非本机上安装就无法直接访问,这就比较蛋疼。

请百度或者谷歌SSH端口转发,将服务器上的8886端口转发到本地,然后本地浏览器访问后进行修改。

命令大概是如下

ssh root@服务器IP -L 8886:localhost:8886

然后访问http://localhost:8886/ 来修改配置,XShell之类有内置的端口转发,自己启用就行了

三.自动安装

微力团队发布了Linux的完全自动化安装脚本,方便喜欢微力的用户快速安装,也使用该安装器在我们的服务器环境上做快速部署。

#(如果需要指定索引存放位置请在最后面添加-d 路径 如 -d /data/verysync)
curl http://www.verysync.com/shell/verysync-linux-installer/go-installer.sh > go-installer.sh
chmod +x go-installer.sh
./go-installer.sh

安装完成后就可以用浏览器打开 http://你的IP地址:8886  管理微力内容了

参数说明

./go-installer.sh [-h] [-c] [--remove] [-p proxy] [-f] [--version vx.y.z] [-l file] [-d index location]
  -h, --help            显示帮助
  -p, --proxy           指定代理服务器 -p socks5://127.0.0.1:1080 or -p http://127.0.0.1:3128 etc
  -f, --force           强制安装
      --version         安装特定版本 例如 --version v0.15.11-rc2
  -l, --local           从本地下载好的文件安装 需要使用绝对路径如 -l /root/verysync-linux-amd64-v0.15.12-rc1.tar.gz
      --remove          卸载微力同步
  -c, --check           检查更新
  -d  --home            指定微力索引存放位置, 默认 ~/.config/verysync

此脚本会自动安装以下文件:

- /usr/bin/verysync/verysync: 微力主程序
- /usr/bin/verysync/start-stop-daemon: daemon管理程序 centos 会使用预编译好的i386 amd64 arm arm64版本
安装器会配置自动运行脚本。自动运行脚本会在系统重启之后,自动运行 verysync。目前自动运行脚本只支持带有 Systemd, init.d 的系统,以及 Debian / Ubuntu 全系列

运行脚本位于系统的以下位置:

- /etc/systemd/system/verysync.service: Systemd
- /etc/init.d/verysync: SysV

经测试系统:

CentOS 6.5 init.d
CentOS 7.5 systemd
Debian 7.11 systemv
Debian 9.5 systemd

由于Centos默认仓库 没有daemon套件,所以本仓库自带了i386 amd64 arm arm64版本的start-stop-daemon程序,省去了系统编译安装. 如果使用其它架构的系统,需要自行编译daemon套件,方法 https://gist.github.com/yuuichi-fujioka/c4388cc672a3c8188423

声明:本文为原创,作者为 Svlik,转载时请保留本声明及附带文章链接:https://www.svlik.com/2412.html