V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
下载 BitTorrent Sync
BTSync for iOS
BTSync for Android
snw
V2EX  ›  BTSync

差点被 Resilio Sync 坑死

  •  
  •   snw · 2018-06-03 00:15:39 +08:00 · 38973 次点击
    这是一个创建于 2116 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一直拿 Resilio Sync 作为本地仓库备份到远程网盘的同步软件。只有两个 peer 互相同步:远程软件及仓库是部署在 VPS 上的 Linux 端,本地软件是装在日常笔记本电脑上的 Win 端,本地仓库在移动硬盘上,隔十天半个月插到电脑上整理一下文件。

    上次插移动硬盘大约是一个月前,Resilio 是完全同步完成的(至少显示如此)。
    今天插上并整理了下文件,然后等 Resilio 同步完成,要拔移动硬盘之前随手翻了下文件夹,惊讶地发现很多目录居然都是空的——所有文件夹和子文件夹都在,但是大部分文件都被删光了。

    万幸的是开了删除到存档选项,用 FreeFileSync 花很长时间比对之后总算把文件都找了回来,唯一的问题是所有文件的修改日期都变成了今天。

    感慨一下全自动的实时同步软件总是有风险,必须得启用 archive 或 version history 并且经常检查。
    11 条回复    2018-06-03 18:28:18 +08:00
    imn1
        1
    imn1  
       2018-06-03 00:20:30 +08:00
    实际上,所有双向同步都是有风险的,我觉得至少一个双向+一个单向,三个设备才算基本
    f2f2f
        2
    f2f2f  
       2018-06-03 00:28:02 +08:00
    @imn1 版本管理了解一下。
    coderlxm
        3
    coderlxm  
       2018-06-03 00:31:41 +08:00 via Android
    这个之前是不是叫 btsync ?我也出现过这种情况。
    imn1
        4
    imn1  
       2018-06-03 00:39:59 +08:00
    @f2f2f
    好吧,我没说清楚,应该是——
    ……一个[工具]双向 + [另]一个[工具]单向……

    软件总是会更新的,可能一个没测试出来的意外「小 BUG 」就会造成数据丢失,很可能是因为平台什么难以预料的情况
    软件商肯定会修,但不会为你丢失的数据负责,也不可能负责
    参考某个 win10 版本掉盘的事

    要安全的话,双软件三设备是最基本的
    snw
        5
    snw  
    OP
       2018-06-03 00:58:58 +08:00
    @imn1
    我工作用的环境确实是这样,用 seafile 通过服务器与同事双向同步,定期用 freefilesync 手动单向备份。由于实时同步会大幅增加出问题的概率,所以本地分成工作用目录与同步用目录,用 freefilesync 手动双向同步。
    只是这样需要很多冗余硬盘空间,个人仓库就偷懒了。

    另外就是 Resilio Sync 太傻瓜式了,所有冲突都默默自动处理掉,导致有时错误操作。冲突应该是很严重的错误,应该抛给用户解决。

    @981340936lxm
    是的,看节点名字。
    Resilio 同步时修改文件很容易出错,记得上次修改文件名大小写,结果同步后被删了。
    songz
        6
    songz  
       2018-06-03 01:17:18 +08:00
    @snw #5 修改文件名对于被同步的一方来说相当于 删除旧文件再添加新文件。感觉不应该说被 resilio 坑,只有自己足够了解里面的逻辑才是正经事
    herozhang
        7
    herozhang  
       2018-06-03 09:24:08 +08:00
    用 git 管理自己的文件吧
    snw
        8
    snw  
    OP
       2018-06-03 10:49:28 +08:00 via Android
    @songz
    因为 Resilio 做得足够傻瓜式,那么理应对用户各种操作都能处理,而不需要让用户了解同步的逻辑。
    对于足够智能的同步软件来说,完全应该能识别重命名、移动等操作,而不是一律视为删除和新建。

    我说修改文件名被删,意思是改了文件名大小写(可能有多次操作)之后,同步双方的这文件都被删了。
    songz
        9
    songz  
       2018-06-03 12:10:34 +08:00 via Android
    @snw 主动修改文件名字,不算删除操作。但是被同步的一方不认为你是改名字,而是认为你删了再添加别名文件。那被删的自动进入 archive 了,这哪里坑呢?
    phoenixlzx
        10
    phoenixlzx  
       2018-06-03 17:25:04 +08:00
    遇到过 Linux 和 Windows 文件名允许字符不同导致我的高清音源被删了一半的问题.......
    snw
        11
    snw  
    OP
       2018-06-03 18:28:18 +08:00
    @songz
    问题是改了文件名并同步后,这个文件从双方电脑上都被删了,而没有出现新名称的文件。如果没有 archive 的话,就意味着修改文件名导致文件丢失。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5927 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 06:13 · PVG 14:13 · LAX 23:13 · JFK 02:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.