网盘的文件唯一 是如何实现的,有家用方案么.

175 天前
 dreamkuo
本人 10t 的硬盘,都满了, 究其原因,大量重复文件.不同时期的系统镜像,手机照片的非增量备份.
这些东西如果软件去重,会花费大量的时间,

有没有的类似网盘重复文件保留一份的方案.

类似资料上说的 Windows Server 2019 Btrfs Ceph ZFS 等方案.
但是如何具体的落实到家用中呢?

目前大容量硬盘若干. 硬盘柜两个. 移动硬盘若干. 大家有什么好的建议, 给个方案.

这里先感谢大家了.
2749 次点击
所在节点    NAS
21 条回复
dreamkuo
175 天前
我的想法是建立一个支持去重的硬盘系统, 把包含大量重复的, 例如软件备份.照片备份,系统镜像等丢进去. 这个硬盘系统就当做最终备份系统. 安全性要求并不是很高.(有了去重功能,最终备份的体积也会小很多,就算不重要也可以做双备份)

然后重要资料,例如照片等,再单独手工整理之后拷贝出来.

这样以后重要性不确定的东西可以先丢进去.然后隔一段时间挑重要的拷贝出来.采用硬盘备份.网络备份等方式处理.
dreamkuo
175 天前
有什么经济可靠的方案. 给推荐一下,
听说群辉可能支持,但是一来不知道是否稳定, 二来我并不需要群辉的其他配套功能. 对我来说经济浪费.能够支持 10t 的群辉价格昂贵.
而且我已经有两个硬盘柜了.
dreamkuo
175 天前
技术关键词叫 copy-on-write (COW)的文件系统
ladypxy
175 天前
zfs 轻松搞定
dreamkuo
175 天前
@ladypxy 用什么方案呢, 自建 nas?
dreamkuo
175 天前
如果自建一个 nas 系统, 在有硬盘柜的情况下,用什么方案比较好呢, ? 软路由主机+硬盘柜?
KimiArthur
175 天前
copy on write 只能解决复制文件不增加空间的问题,不同来源的相同文件是解决不了的。你要的是基于一个或几个 hash 判重的系统,比如百度是依靠开头 256kb 和全文件 md5,crc32,外加文件大小来判重的。自己做的话可能一个 sha256 也够了,不过现成解决方案倒是不了解
missuo
175 天前
@dreamkuo 我目前家里的服务器 Debian ,用的 ZFS
cjpjxjx
175 天前
你要找的是不是 TrueNAS
cmdOptionKana
175 天前
可以用 Python 或 Go 之类写个快速去重的小工具,截取每个文件开头的一部分,保存 md5 到 sqlite ,这样跑一遍很快的,可以筛选出大概率重复的文件,这些文件数量不会很多,对这些可疑文件再跑一次完整的查重就行了。
totoro625
175 天前
自建网盘推荐:Seafile
自带文件去重,占用资源不高,国内开发,开源版不限用户,专业版限制 3 用户
缺点是直接用资源管理器无法直接访问文件

备份推荐:restic
自带文件去重,增量备份,版本控制,非常好用

个人用户不推荐 Ceph ,自建服务器内存不充裕不推荐 ZFS
flyqie
175 天前
你可以看下 fastdfs

去重在不同层有不同做法。
PbCopy111
175 天前
你这种情况,都删了就成了,反正也不看。
要么没事自己翻翻照片,每天收拾一点,重温记忆。你拍照的时候,不就是为了重温么。。
我以前也有这个顾虑,现在完全没有了,4T 的硬盘存视频和照片,还是能富裕,用了 10 年了。
Byzliu
174 天前
抽空整理一下吧
fuis
174 天前
块级别去重
ZFS dedup: https://www.truenas.com/docs/references/zfsdeduplication/
或者 btrfs + bees https://github.com/Zygo/bees

文件级别去重
https://github.com/markfasheh/duperemove

对于备份场景,我现在用的是 kopia 进行备份,他是基于 CDS 做的 https://kopia.io/docs/features/#backup-files-and-directories-using-snapshots

网盘的文件唯一是另一个原理,那个是基于 OSS 的校验和做的。但是一般的 OSS 比如 minio 本身不支持去重。
someday3
174 天前
写个代码,循环处理,计算哈希,哈希重复的标记删除,或者是挪到同一个的某个路径,人工审核一遍,再删除。

需求不大,不会到一百行代码的。
NoOneNoBody
174 天前
文件去重和内容去重是两码事
前者很简单,递归一遍检查 bytes(size)/hash 就够了,因为检查是只读性质,多进程跑加速,并且把 path:hash 保存起来,以后检查无需再次 hash
如果文件不是你产生创建的,例如下载,多数需要后者,这就难办了,需要一套专门的相似匹配系统
xausky
174 天前
如果特别多重复的上 zfs 的块级去重,就是内存占用大一些
ruanimal
174 天前
简单方法,再加个硬盘
dreamkuo
174 天前
@ruanimal 老铁 6666

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/991961

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX