本帖最后由 nice 于 2021-12-21 19:00 编辑
自己用的是iphone手机moments同步浪费时间,还需要单独打开moments进行备份,而且moments的app界面不是很喜欢,
所以网上找到群辉docker部署ubuntu,安装icloudpd进行直接的云端照片备份,小白一枚,一顿乱搞算是实验成功,发帖做个标记供自己或有需要的复刻
还有个问题,我把照片都存在自己创建的photo文件夹下了,moments不识别啊。。。。。。该怎么搞。 其他人注意一下文件存放位置
最开始的docker镜像加速 https://zhuanlan.zhihu.com/p/337825636
1.安装、配置ubuntu
我是在docker中直接下载的Docker Hub的latest(最新版)
1》docker--映像--新增--从url添加--地址:https://registry.hub.docker.com/_/nginx/ --标签latest--等待下载完成(70多mb)--docker设置--高级设置--自动重新启动--添加文件夹photo(你想把照片存放的位置)--装在路径 /mnt
2》容器--双击--终端机--安装sudo,python,pip,icloudpd查看sudo是否安装,应该会提示 No such file or directory,说明系统没有安装sudo
安装sudo
apt-get install sudo
安装python3
sudo apt-get install python3.8
确认python3版本
ubuntu 安装pip
1)更新系统包
sudo apt-get update
sudo apt-get upgrade
2)安装pip
sudo apt-get install python3-pip
3) 检查pip是否安装成功
3》icloudpd设置
安装icloudpd
pip3 install icloudpd
安装成功后下载最近100张照片进行测试
icloudpd -d /icloud --username=账号 --password=密码 --recent 100
,会提示你进行双重验证,选择1,填写code,回车。测试结果可参考图1
图1
,结果相同的话可以进行下一步校准系统时区,安装软件校准
选择6回车 选择70回车(亚洲上海时区),结果如图2
图2:时区选择结果
按方向键↑,选择icloudpd -d /icloud --username=账号 --password=密码 --recent 100,这句,删掉--recent100,
即改为
icloudpd -d /icloud --username=账号 --password=密码
这一步会下载icloud中所有照片,下载完成会有提示
接下来依次输入以下代码,回车运行
apt-get install vim -y
apt-get install cron
检查cron服务是否启动会提示:cron is running
4》定时同步脚本 参考: https://zhuanlan.zhihu.com/p/357613641
进入脚本编辑状态,按下i键(左下角出现INSERT)后,复制如下代码(修改账号密码)
#!/bin/bash
pgrep -f icloudpd && echo "icloudpd is already running." && exit
icloudpd -d /mnt --username [email protected] --password xxxxxxxxxx --recent 100 --auto-delete
按esc,退出编辑模式(左下角INSERT消失),按住shift+:,在最下面出现冒号输入wq,回车,返回主界面
如图3
图片3
解释代码 recent 100表示下载最近的100张照片
进行脚本测试
会出现如上下载照片一样的结果。
测试成功后,将命令加入定时任务中运行
在文件中添加一下代码
0 2 * * * su root /backup.sh >> /mnt/icloud_backup.log 2>&1
解释下上面的这行代码
0 2 * * * 表示每天凌晨2点定时执行backup任务 可在网站编辑 https://crontab.guru/#0_2_*_*_*
>> /mnt/icloud_backup.log 表示会将执行的log日志保存到photo文件夹中(用来出错时查看问题)
----------------------------------------------------------------完结---------------------------------------------------------------------------------
上面定时这一块,我的设置是每天凌晨2点,同步最近的100张照片(这两个点大家可以根据自己的每天拍照数量自行更改),请注意如果你每天照片更新数量大于100 他是无法完全同步的!
暂时还未测试定时运行,明天我在看看能否正常运行定时任务
|