ResilioSync-P2P同步文件工具
简介
Resilio Sync是一个使用对等网络(P2P)进行数据同步的工具,由BitTorrent公司开发。 优点是当用户想给其他人分享内容时,不需要由中心服务器进行转发,数据直接由两个节点建立P2P进行传输。 缺点则是因为没有中心器,拥有文件的节点必须保持在线,其它节点才能同步数据,而且由于采用类似BT的协议,在某些禁用BT下载的场景可能会受到影响。
不过对于我来讲这个缺点几乎可以忽略,因为我本身有一台局域网服务器可以保持长期在线,而且也不需要将服务对外映射过多的端口,只需要一个管理页面即可管理服务
服务分标准版和专业版,个人用户不涉及商业用途选择标准版即可,
服务安装
Ubuntu安装
为了方便服务管理,以下安装采用[[systemctl服务控制 | systemd]]来对服务进行管理
# https://help.resilio.com/hc/en-us/articles/206178924-Installing-Sync-package-on-Linux
wget https://download-cdn.resilio.com/2.7.3.1381/Debian/resilio-sync_2.7.3.1381-1_amd64.deb
dpkg -i resilio-sync_2.7.3.1381-1_amd64.deb
systemctl enable resilio-sync
systemctl start resilio-sync
# 配置文件目录
ls -l /etc/resilio-sync/
config.json # 服务配置文件
init_user_config.sh # 初始化用户脚本
user_config.json # 用户配置文件
# 安装完之后默认会在系统中添加一个rslsync用户来控制服务,需要调整一下这个用户的权限
usermod -aG USER_GROUP rslsync
config.json内容
{
"storage_path" : "/var/lib/resilio-sync/",
"pid_file" : "/var/run/resilio-sync/sync.pid",
"webui" :
{
"force_https": true,
"listen" : "127.0.0.1:8888" # 管理台地址
}
}init_user_config.sh脚本内容
#!/bin/sh
mkdir -p $HOME/.config/resilio-sync
BTSYNC_STORAGE=$HOME/.config/btsync/storage
RESILIO_STORAGE=$HOME/.config/resilio-sync/storage
BTSYNC_CONFIG_PATH=$HOME/.config/btsync/config.json
RESILIO_CONFIG_PATH=$HOME/.config/resilio-sync/config.json
if [ -d ${BTSYNC_STORAGE} ] && [ ! -d ${RESILIO_STORAGE} ]; then
# Copy btsync storage folder
cp -r ${BTSYNC_STORAGE} ${RESILIO_STORAGE}
# Copy btsync config if exist
if [ -f ${BTSYNC_CONFIG_PATH} ] && [ ! -f ${RESILIO_CONFIG_PATH}]; then
cp ${BTSYNC_CONFIG_PATH} ${RESILIO_CONFIG_PATH}
sed -i 's$\.config/btsync/storage$\.config/resilio-sync/storage$g' ${RESILIO_CONFIG_PATH}
sed -i 's$\.config/btsync/btsync\.pid$\.config/resilio-sync/sync\.pid$g' ${RESILIO_CONFIG_PATH}
fi
else
mkdir -p ${RESILIO_STORAGE}
fi
if [ ! -f ${RESILIO_CONFIG_PATH} ]; then
sed -e "s|{HOME}|$HOME|g" /etc/resilio-sync/user_config.json > ${RESILIO_CONFIG_PATH}
fiuser_config.json内容
{
"storage_path" : "{HOME}/.config/resilio-sync/storage",
"pid_file" : "{HOME}/.config/resilio-sync/sync.pid",
"webui" :
{
"force_https": true,
"listen" : "127.0.0.1:8888"
}
}服务管理
通过浏览器访问ip:8888即可打开管理台,需要先配置一个用户名和密码,用于限制管理台不会被随意登录。 然后为这个服务节点指定一个名称,这个名称指定之后不可修改。
使用
配置完之后通过管理界面添加需要同步的目录,然后在分享中可以设置访问次数、链接过期时间、读写权限。
分享给其它用户同步的方式则有“链接”,“私钥”,“二维码”三种方式。
基本的使用根据界面的引导就可以完成了。
服务端也是客户端
基本上常见的系统(Android、iOS、mac OS、Windows、Linux、NAS)都支持
最后更新于