S3 换源后发现丢失了部分笔记,有办法找回吗?

从我自己搭建的 MinIO 换到了 CF R2,方法是直接在思源里更换了 endpoint 和其他相关的 S3 桶信息,连接正常之后点同步按钮。

可能我第一次同步的电脑上数据不够新?也许 R2 上的数据不够新?我不确定,总之同步之后才发现有一段时间的笔记丢失了。

然而,好像又不是这段时间的笔记全都丢了,因为我看到部分 Daily 笔记还在,而这些笔记的链接无法找到目标,比如我的 Daily 里都会有“今日笔记”这条笔记名称的链接,但“今日笔记”这条笔记丢失了。

我估计 MinIO 上这些笔记还在,只是现在设备不在我身边,Tunnel 访问 S3 现在受限,现在访问不太方便。

想问下想要恢复这些数据,可以尝试的操作是?有没有什么其他风险?

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    23827 引用 • 96862 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 可以试试通过 数据历史 - 数据快照 回滚恢复。

    1 回复
  • Whacka

    感谢,我试了下找到关键节点了,确实发生在转移到 R2 的日期,删除了 400+ 个笔记。。。

    请问下回滚应该意味这之后的修改都被放弃了吧?有没有两边都能保全的方法?

    3 回复
  • 88250 1 1 评论

    再弄一个工作空间,回滚以后手动拷贝 data 文件夹合并。

    1 回复
    明白了,不过我这台电脑还没安装合并软件,而且我回忆这几天新增的笔记不多,就在数据回滚的对比界面直接复制了几个关键的笔记(先复制笔记名称,退出来新建笔记,然后再找到笔记内容,退出来粘贴这样。。。)
    Whacka
  • 整个工作空间搞一个副本,然后打开这个副本去回滚,把找回的这些笔记移出来

    思源 data 目录的内容结构我不是很了解,不知道咋移动。用合并软件的话也许会方便一些。
    Whacka
    @Whacka 用别的方式自动合并的话可能会有问题,找到文档导出导入或者手动复制粘贴应该更好
    JeffreyChen
  • Whacka

    话说我还是想问下,这类问题常见吗?可能的原因是?

    2 回复
  • 88250 1 评论

    不要切换源,不然同步信息无法跟踪。

    我尽量不这么做,但某些特殊情况也是不得已。但为何说同步信息无法跟踪呢?
    Whacka
  • EmptyLight 5 评论

    我自己理解如下:

    你原本的所有内容记为 A 状态,之后你回退了一部分提交,回到 A'状态,这时候是切换了同步存储桶。在这时候你就已经丢失了部分笔记,应该是最初同步到 R2 的设备笔记不全,同步之后通过修改时间认为那个是最新版本。后面你其他设备同步 R2 之后发现上面的数据修改时间比本地的数据要新,所以从 R2 拉取了不全的数据。

    正常使用一般不会出现这种数据丢失问题,在同步的时候会检查两边的数据修改时间。不过这次估计是最早同步的那台设备数据不全,又正好因为切换存储桶导致数据修改时间更新了,导致其他设备同步之后删除了一些数据。我粗略画了一个 Git 提交图来表示这种情况。

    gitGraph commit id: "origin" commit id: "切换R2同步" branch R2 commit id: "新写的笔记" checkout main commit id: "丢失的笔记"
    非常感谢您的解释和配图,很详细!不过我这次换源删除了有 400+ 的文件,这些删除的文件应该不存在更新时间的问题吧?
    Whacka
    另外您提供的配图(但文字可以框选?)是怎么制作的呢?看起来很精致~
    Whacka
    @Whacka 是一个 mermaid 图表,同时在思源中可用,在思源笔记内部用户指南有粗略的介绍。我这里使用的是 GitGraph。上述假设你有 2 部设备(基于假设分析的),A 笔记保持最新,B 有一段时间没有同步。A 在丢失笔记的地方,B 因为同步不及时落后在 R2 同步处,这里使用 B 设备切换到新同步存储桶,之后云端生成一份修改时间最新的快照,A 连接到 R2 之后发现云端数据更新,采用了云端数据,导致本地的新笔记丢失。之后所有笔记都是在丢过笔记的基础上添加的。
    EmptyLight
    @EmptyLight 如果是笔记文件在多个节点都存在(只是修改的情况)可以用修改的时间戳解释,但如果是删除的文件,A 如何确定这个文件不是新的呢?换句话说 A 应该不知道这个文件被删除了,因为没有删除的记录。
    Whacka
    @Whacka 删除也会生成一次记录,标记这次删除了什么东西。你可以看看文件历史那些地方,我记得会有删除的记录
    EmptyLight
  • Kyun

    倘若主要是文字修改的話,可以兩邊都導出 MarkDown 格式,然後用類似 WinMerge 這些工具來對比各自解壓後的文件夾來手工合併。

请输入回帖内容 ...

推荐标签 标签

  • 印象笔记
    3 引用 • 16 回帖
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    98 引用 • 345 回帖 • 1 关注
  • sts
    2 引用 • 2 回帖 • 202 关注
  • 游戏

    沉迷游戏伤身,强撸灰飞烟灭。

    178 引用 • 816 回帖 • 2 关注
  • CodeMirror
    1 引用 • 2 回帖 • 140 关注
  • Windows

    Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

    223 引用 • 474 回帖 • 1 关注
  • Office

    Office 现已更名为 Microsoft 365. Microsoft 365 将高级 Office 应用(如 Word、Excel 和 PowerPoint)与 1 TB 的 OneDrive 云存储空间、高级安全性等结合在一起,可帮助你在任何设备上完成操作。

    5 引用 • 34 回帖
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    85 引用 • 165 回帖
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 657 关注
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖 • 1 关注
  • 职场

    找到自己的位置,萌新烦恼少。

    127 引用 • 1706 回帖
  • HTML

    HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。

    107 引用 • 295 回帖
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖
  • PWL

    组织简介

    用爱发电 (Programming With Love) 是一个以开源精神为核心的民间开源爱好者技术组织,“用爱发电”象征开源与贡献精神,加入组织,代表你将遵守组织的“个人开源爱好者”的各项条款。申请加入:用爱发电组织邀请帖
    用爱发电组织官网:https://programmingwithlove.stackoverflow.wiki/

    用爱发电组织的核心驱动力:

    • 遵守开源守则,体现开源&贡献精神:以分享为目的,拒绝非法牟利。
    • 自我保护:使用适当的 License 保护自己的原创作品。
    • 尊重他人:不以各种理由、各种漏洞进行未经允许的抄袭、散播、洩露;以礼相待,尊重所有对社区做出贡献的开发者;通过他人的分享习得知识,要留下足迹,表示感谢。
    • 热爱编程、热爱学习:加入组织,热爱编程是首当其要的。我们欢迎热爱讨论、分享、提问的朋友,也同样欢迎默默成就的朋友。
    • 倾听:正确并恳切对待、处理问题与建议,及时修复开源项目的 Bug ,及时与反馈者沟通。不抬杠、不无视、不辱骂。
    • 平视:不诋毁、轻视、嘲讽其他开发者,主动提出建议、施以帮助,以和谐为本。只要他人肯努力,你也可能会被昔日小看的人所超越,所以请保持谦虚。
    • 乐观且活跃:你的努力决定了你的高度。不要放弃,多年后回头俯瞰,才会发现自己已经成就往日所仰望的水平。积极地将项目开源,帮助他人学习、改进,自己也会获得相应的提升、成就与成就感。
    1 引用 • 487 回帖 • 4 关注
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 648 关注
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    6 引用 • 136 回帖
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 544 关注
  • Openfire

    Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

    6 引用 • 7 回帖 • 102 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    93 引用 • 113 回帖 • 1 关注
  • 阿里巴巴

    阿里巴巴网络技术有限公司(简称:阿里巴巴集团)是以曾担任英语教师的马云为首的 18 人,于 1999 年在中国杭州创立,他们相信互联网能够创造公平的竞争环境,让小企业通过创新与科技扩展业务,并在参与国内或全球市场竞争时处于更有利的位置。

    43 引用 • 221 回帖 • 96 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    292 引用 • 738 回帖
  • 外包

    有空闲时间是接外包好呢还是学习好呢?

    26 引用 • 232 回帖
  • SSL

    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层对网络连接进行加密。

    70 引用 • 193 回帖 • 413 关注
  • Sillot

    Insights(注意当前设置 master 为默认分支)

    汐洛彖夲肜矩阵(Sillot T☳Converbenk Matrix),致力于服务智慧新彖乄,具有彖乄驱动、极致优雅、开发者友好的特点。其中汐洛绞架(Sillot-Gibbet)基于自思源笔记(siyuan-note),前身是思源笔记汐洛版(更早是思源笔记汐洛分支),是智慧新录乄终端(多端融合,移动端优先)。

    主仓库地址:Hi-Windom/Sillot

    文档地址:sillot.db.sc.cn

    注意事项:

    1. ⚠️ 汐洛仍在早期开发阶段,尚不稳定
    2. ⚠️ 汐洛并非面向普通用户设计,使用前请了解风险
    3. ⚠️ 汐洛绞架基于思源笔记,开发者尽最大努力与思源笔记保持兼容,但无法实现 100% 兼容
    29 引用 • 25 回帖 • 93 关注
  • CSS

    CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。

    197 引用 • 541 回帖 • 2 关注
  • 电影

    这是一个不能说的秘密。

    121 引用 • 605 回帖
  • PWA

    PWA(Progressive Web App)是 Google 在 2015 年提出、2016 年 6 月开始推广的项目。它结合了一系列现代 Web 技术,在网页应用中实现和原生应用相近的用户体验。

    14 引用 • 69 回帖 • 168 关注