群晖中定时同步 iCloud 照片库
目标
旨在确定群晖中使用 icloudpd 同步备份 iCloud 照片库,并自动被 Photos 识别,而不需要额外创建计划任务。
前文研究
步骤
1. 准备用户目录服务、权限
安装 Photos 组件会要求启用该服务,理论上已经启用。
打开 Control Panel
> User & Group
> Advance
,拉到底部,选中 Enable user home service
继续切换到 File Services
> NFS
> Enable NFS service
再切换到 Shared Folder
> homes
,点编辑,在 NFS Permissions
中创建一个规则,如下:
1 | Hostname or IP: <你的 nas 主机 IP> |
2. 准备文件及 docker volume
打开群晖的 File Station,创建以下目录:
1 | docker/config/icloudpd |
以及以下文件:
1 | homes/<用户>/Photos/iCloud/.mounted |
用 ssh 连接到群晖,创建一个 docker volume,通过 NFS 连接至用户文件夹:(假设 homes
在 /volume2/homes
)
1 | docker volume create --driver local \ |
3. 部署 icloudpd
ssh 连接到群晖,执行以下命令
1 | docker create \ |
上述 admin, users 不推荐修改,因为 nfs 挂载后映射的用户已经设置为 admin,保持统一即可
4. 启动并配置 2FA 登录
群晖中打开 Docker
> Container
,选择 icloud-pd
启动,双击它,切换至 Terminal
,等待出现 Restarting in 5 minutes...
后,执行以下命令:
1 | docker exec -it icloud-pd /usr/local/bin/sync-icloud.sh --Initialise |
然后按提示进行登录即可。