2026-10-24 · 维护日志 · 照片整理

账上少了 3 个文件
一次 973 GiB 的照片去重

12:30,3TB 相片备份的清理开始执行。计划表里有 160,081 个确认重复的副本, 但移动日志和整组日志加起来只有 160,078 个。少了 3 个,究竟是清单错了, 还是已有文件被漏删?这比“释放了多少空间”更值得先回答。

这里说的“确认”不是文件名一样,也不是肉眼看着相似。先按文件大小筛出候选,再比较首尾片段, 只有快速签名相同的文件才进入完整 SHA-256 计算。29 万个可判重文件最后算完,没有哈希错误; 得到的 33,373 组完全相同内容里,才挑出可以删除的 160,081 个副本。 每条删除记录还必须指向一个仍然存在的同哈希参考文件。

先隔离,再相信清单

备份里四座 Photos 图库原样保留,任何 .photoslibrary 内部文件都不进入删除范围。清理先处理 11 个外围来源:能整组确认的,把整组放进同盘隔离目录; 不能整组处理的,逐个移动并写日志。只有在复核完成后,隔离区才有资格进入下一步。

核对表随后给出了一个很具体的结果:删除源位置仍存在的文件为 0,隔离目标缺失为 0, 检查到 32,569 个唯一参考路径,没有任何一个被列进删除计划,图库包内违规同为 0。 唯一没对上的,就是总数与日志之间那 3 个。

找到了:3 个文件在速度测试时直接从隔离区删掉,均已有保留参考。
它们不是凭空消失,也不在正式移动日志里。找到确切原因之前,不能把差额写成“约等于”; 找到以后,也不能把解释当作借口,另外的异常仍要逐项归零。
3TB 相片备份的清理账本
项目结果
审计文件290,551 个
精确重复组33,373 组
可删除副本160,081 个,约 973 GiB
日志记录160,078 个,另 3 个测试删除已解释
保留并整理16,129 个,含 14,490 张照片、1,381 段视频
边界违规0;参考路径进入删除计划 0

模糊的部分,宁可留下

精确哈希之外,还生成了 14,526 条待复核记录,没有移动或删除任何一项。里面有 12,237 个 哈希相同但 Live Photo、视频或旁车文件尚未确认完整的副本,3,698 个同名但内容不同, 154 个大小相同但内容不同,以及 31 个图片解码失败。

相似照片另做了一轮感知哈希:3,524 组、11,248 个文件被放进候选组,最多的一组有 38 张。 连拍、截图、不同尺寸导出都可能长得几乎一样,却不能证明它们可以互相替代。 所以这一轮只是生成复核表,自动删除数量是 0。

留下的文件,也不能随便丢进年份

清理完成后,16,129 个保留文件按时间和原有分类整理,移动失败为 0。拍摄时间没有只看一个来源: 10,992 个来自 EXIF,1,381 个视频来自 QuickTime 元数据,1,946 个 Live Photo 配套文件 继承主文件时间,最后才有 1,810 个回退到文件修改时间。照片内容相同,才讨论删哪个; 拍摄时间可冲突,就不能只凭目录名替它搬家。

结论

删掉 973 GiB 只是结果。真正让这次清理成立的,是每个被删文件都能指向保留副本, 每个移动动作都有日志,每个模糊判断都停在不删除的一侧。 差 3 个文件并不比差 3 万个文件小;它们都说明账本还没闭合。先解释差额,再相信空间数字, 照片备份才不只是“看起来整理完了”。

本文依据 2026-10-24 的审计、删除计划、移动日志、复核结果和整理统计写成。 想继续看“怎么证明操作真的完成”,可以读 “看起来成功了”是最贵的假象。 回到笔记