终于实现了照片备份到 NAS 的终极方案

2023-09-06 10:08:06 +08:00
 fregie

注: 虽然本主题的主要目的是分享,但严格来说算是软文吧

为什么要存到 NAS

一直不愿意用一些云相册或者网盘之类的服务来备份和保存自己的照片,主要是两个原因:

  1. 不想自己的隐私被这些服务方一直视奸,你传上去的照片视频肯定会被这些服务方扫描一遍的,就算没有私密的照片,我也接受不了隐私被这样侵犯
  2. 不想自己的数据被绑架,毕竟数据是别人手上,哪天别人要跑路或者涨价,你也没有任何办法

过于尝试的方案

群晖 moments

最开始 NAS 装了群晖,于是就用了群晖自带的 moments 来同步照片.用了一段时间后出现了一些问题:

  1. moments app 几乎不再更新,体验不算差,但绝对不好,老婆总是抱怨 ios 上这不好用那不好用
  2. 与群晖绑定,因为必须搭配 moments 服务端一起使用,所以你没有任何别的选择,这让我感觉很被动

现在似乎群晖已经淘汰 moments 了,出了新的群晖 photos,这个我没有试用过,因为群晖硬件还是太贵了,现在已经改用 Unraid 了

PhotoPrism - 超好用

不得不说 PhotoPrism 确实太好用了,我最喜欢它的一点是他的兼容性很强,你只要丢给它一个目录,他就能处理里面的所有照片,并且可以在各个维度进行检索,对于超大量的照片来说真的很好用.

但问题就在于 PhotoPrism 只有服务端,把照片同步到 NAS 这个动作还要我自己想办法来完成

PhotoSync - 不值得这个价格

这个 app 的功能还是可以的,但是它的 UI 和交互是在是有点古老,我还需要专门用一个 app 来进行同步这个事情,最重要的是要付费才能用,我觉得不太值得,放弃.

Nextcloud - 移动端 app 太差

Nextcloud 作为网盘来说挺好用的,我尝试使用 Nextcloud 的移动端来同步相册照片.但我真的安装了安卓端 app 后,连接了我 https 反代后的 URL 居然直接崩溃了,完全没法用,放弃.

Alist + Pho + Rclone + PhotoPrism - 终极方案

这个方案最让我喜欢的一点是各个环节都不是耦合的,去掉其中任何一个环节都不会影响到其他环节,每个人完全可以根据自己的喜好来替换其中的某个部分.

Alist

官网: https://alist.nn.ci/zh/
负责把各种可用的储存映射成webdav,支持各种云盘网盘以及本地储存

Pho

官网: https://pho.tools/
负责通过webdav上传照片到Alist映射的储存 它很好的一点是支持加密后上传,这样就可以在网盘上做二次备份,在能避免隐私泄露的前提下多一层数据保险
而且我可以在手机上直接用这个 app 来浏览我本地和已经上传的照片,这个 app 的 UI 和交互都很好,可以直接用它来代替系统自带的相册

Rclone

官网: https://rclone.org/
负责把Alistwebdav映射到 NAS 的文件系统内,来把照片喂给 PhotoPrism

PhotoPrism

官网: https://www.photoprism.app/
最终的"集大成者",全家所有设备备份的照片最终全部喂到这里,即使是海量照片也能根据它快速索引到自己想找的照片

最终效果

平时手机上浏览和上传

使用Pho浏览本地和最近上传的照片

查找和浏览过去某个时候的照片

根据信息用PhotoPrism检索即可

26830 次点击
所在节点    NAS
143 条回复
vmebeh
2023-09-06 10:51:20 +08:00
photoprism 对亚洲人脸识别有些不准,这个是它的已知问题,但是整理大量照片真的是没话说,

导入照片前有个要注意的地方是要注意 exif 中的拍摄时间,有些相机长期不用时间会重置,没有 exif 的注意文件修改时间,会用这个时间作为拍摄时间,拍摄时间会影响照片整理
fregie
2023-09-06 10:52:25 +08:00
@xlsepiphone 我就是不想把我的照片交给第三方才自建 NAS 的,用 google photos 就没必要存到 NAS 了. 极空间我不了解,不过国内这种互联网成品 NAS 我也是不敢用的,毕竟现在国产手机系统都内置反诈
我是自己组的装的 Unraid,也因为有很高的虚拟机和 docker 需求
xiaket
2023-09-06 10:52:45 +08:00
提醒下, 远程 photoprism 的图片库一定要定时备份, 否则到时候一锅端.
likooo125802023
2023-09-06 10:55:03 +08:00
群晖不是换成 synology Photos 了么?
继续用呗。
byte10
2023-09-06 10:55:14 +08:00
@fregie 可以的,alist-encrypt 代理出来的 webdav 就可以直接观看加密的图片和视频,直接在线播放,alist-encrypt 就是反向代理(类似 nginx 一样),直接把流量加解密,所以可以看加密的视频。上传视频自动加密,下载视频也是自动解密。可以去体验一下。演示的视频,https://www.zhihu.com/zvideo/1627064703548657664

rclone 好像也是可以直接加解密把,但是不那么透明,没有这个 alist-encrypt 方便。alist-encrypt 是 aes-ctr 加密算法,反正都是很安全。aes 在 cpu 中解析很快。
fregie
2023-09-06 10:55:40 +08:00
@vate32
@zhongjidalao
mtphotos 很好用,但主要有两个顾虑,一是国产闭源方案不是特别放心,二是强依赖 mtphotos 服务端生态太闭环了
fregie
2023-09-06 10:58:08 +08:00
@byte10 相当于做了一层 AES 加密的透明代理,实际上跟我方案中是一样的原理的嘛
bao3
2023-09-06 11:00:37 +08:00
可是,这个方案里,万一网盘更改了 webdav 方式,我们也一样很被动;
如果是有群晖,Photos 可以同步到个人的 /home/$USERNAME 下面的目录里,然后直接用 PhotoPrism 汇总即可。对我来说,这个风险比阿里改规则、Alist 不维护要小得多。
byte10
2023-09-06 11:06:45 +08:00
@fregie 可能会不一样吧? AES-CTR 是流式加密-很不错,可以直接在线观看视频和图片。但是普通的 AES 是块加密要对齐数据,较难做到透明传输。
fregie
2023-09-06 11:14:13 +08:00
@byte10 AES 只是加密方式,单靠 AES 很难在实际应用场景中工作的,pho 实际上用的 AES-CFB,也是流式加密
nullico
2023-09-06 11:55:31 +08:00
我也觉得太麻烦了,说下我的方案

1. nas 开启 smb
2. ss 和家里一直连接
3. 手机安装 file sync,配置每天 3 点通过 smb 自动同步到 nas,并删除手机数据
4. syncthing 异地备份到另外的 server 中做异地备份
5. done
PotoJ
2023-09-06 12:34:27 +08:00
@fregie DS file 直接备份简单省事。
bazingaterry
2023-09-06 13:02:34 +08:00
怎么解决换手机之后重新备份的问题?我遇到的问题是,换手机后所有照片都需要重新往云端上传一次……
fregie
2023-09-06 13:08:38 +08:00
@nullico 你要是真的只是把照片传上去放着,当然不麻烦了
WebKit
2023-09-06 13:08:42 +08:00
你的问题曾经也困扰过我,试过很多最终还是感觉群晖的 photos 最好用,不知道你说的 iOS 不好用是哪里不好用。我老婆手机上给她装上之后,给权限,然后什么也不用管,也不用打开,就能自动备份照片上去
nullico
2023-09-06 13:11:59 +08:00
@fregie #34 也不是,主要是没有找到一个比较满意的开源图库方案,想了下好像也没有随时看的需求,就那样吧,2333
uCharles
2023-09-06 13:22:39 +08:00
mage20 +App 自动备份照片,nice
huaxxy94
2023-09-06 13:32:51 +08:00
你说的方法会把很多原本数据结构改掉,群晖新版 photo 的结构是最完整的,哪有你这个这么麻烦,看这个之前有 V 友发的方法把:
https://www.bilibili.com/video/BV1uP411g7az/
summersun2021
2023-09-06 14:08:19 +08:00
苹果的 ilcoud 2t 足够全家人用上好几年了。 目前 2w+找,1w+小视频。占据空间 800g 作用。 单反拍的照片另外放。
pipilu
2023-09-06 14:10:18 +08:00
自带 photo 同步不就完了,整这么麻烦

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

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

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

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

© 2021 V2EX