苹果相册备份到电脑(苹果相册备份)
五分钟搞定,群晖NAS自动同步iCloud照片(自动转换为JPG格式)
本内容来源于@什么值得买APP,观点仅代表作者本人 |作者:我是王小浪
前情提要:由于网上看到的所有教程,几乎没一个靠谱的,全部都是小白自行捣腾出来的步骤,评论里问题很多,看得让人心疼,所以趁娃子睡了,赶忙整理一篇保姆式的避坑教程。
本教程优势如下:1.全程在群晖桌面上窗口式操作,不需要开启SSH权限,不需要下载SSH客户端,不需要使用群晖SSH最高权限,也不需要懂Linux命令,避免一切不必要的风险;
2.不浪费一丝一毫的NAS硬件资源,不需要Docker运行Linux操作系统容器,也不需要装什么Docker网页管理面板,Docker原生运行,性能直接拉满;
3.关键步骤反复叮嘱加图解,避免踩坑,贴心呵护直至顺利配置完成。
先说正题,操作流程如下:一、管理员登录群晖桌面,这是句废话,但还是要说,举例,我的管理员账号为【xlang】。
二、打开群晖【File Station】,新建所需文件夹及文件:docker/icloudpd/xlanghomes/xlang/Photos/iCloudhomes/xlang/Photos/iCloud/.mounted
三、打开群晖【套件中心】安装【Docker】套件。
四、打开安装好的【Docker】套件,点击左侧菜单【注册表】,搜索关键词“icloudpd”,双击下载星标最多的那个【boredazfcuk/icloudpd】。
五、左侧菜单切换到【映像】,稍等片刻,待下载完成后,双击开始创建容器。
六、容器名称,看你喜好,例如我就随手输了个“icloudpd-xlang”,然后点击左下方的【高级设置】。
七、勾选“启用自动重新启动”,这个不是必须的,如果你想长期丢那让NAS自动运行,那就勾上,不勾也是可以的。
八、切换到【存储空间】设置栏,添加以下两个文件夹的状态路径:docker/icloudpd/xlang --> /confighomes/xlang/Photos/iCloud --> /iCloud
1.选择文件夹docker/icloudpd/xlang,装载路径/config
2.选择文件夹homes/xlang/Photos/iCloud,装载路径/iCloud
如下图所示:
九、切换到【环境】设置栏,新增以下三个变量:apple_id:xxx@xxxTZ:CST-8download_path:/iCloud
1. apple_id:xxx@xxx必须,输入你的iCloud服务的AppleID。
2. TZ:CST-8非必须,中国时区按这个填写,网上清一色的要求填写Asia/Shanghai是无效的,还不如不新增这个变量。
3. download_path:/iCloud必须,否则默认为/home/${user}/iCloud。
如下图所示:
十、点击右下角“应用”,返回到创建容器主界面,点击“下一步”,最后点击“完成”启动创建好的容器。
十一、回到Docker界面,双击刚刚创建好的“icloudpd-xlang”容器,查看日志,可以看到容器的运行情况,右下角转圈圈的图标多刷新几次,会看到下面的错误提示,就可以进入最激动人心的密钥文件创建的过程。
ERROR Keyring file /config/python_keyring/keyring_pass.cfg does not exist.INFO - Please add the your password to the system keyring using the --Initialise script command line option.INFO - Syntax: docker exec -it <container name> sync-icloud.sh --InitialiseINFO - Example: docker exec -it icloudpd sync-icloud.sh --InitialiseINFO Restarting in 5 minutes...
如下图所示:
十二、好了,到了要屏住呼吸的时刻了:1.切换到【终端机】一栏,点击【新增】右侧的下拉小箭头;
2.选择【通过命令启动】;
3.在弹出的对话框输入“/bin/sh”后点击【确定】;
4.左侧菜单选择打开刚刚新建的【sh】终端;
5.输入以下命令后回车,进行初始化:
sync-icloud.sh --Initialise
十三、开始进行苹果账号的双重认证了,创建cookie文件,有效期默认为90天,到期后需再进行一次认证:
1.如下图所示,按提示输入你的AppleID密码,盲输,这里不会显示你输入的内容,输入完成后回车;
Enter iCloud password for email@address:
2.如密码正确,会提示询问你是否保存,输入“y”后回车,不然就全剧终了;
Save password in keyring? [y/N]: y
3.这时候你登录了AppleID的设备上会提示是否允许登录的弹窗,先不要理会,在提示询问后输入数字“0”后回车;
Which device would you like to use? [0]: 0
4.在收到提示的设备上,点击【允许】登录,获取弹窗验证码,将该验证码按下面提示输入后回车;
Please enter validation code: 123456
5.校验通过后,Apple会通过短信,注意是短信发送二次验证码,这时候你设备上再有弹窗点击【允许】即可,弹窗验证码无需理会,短信验证码收到后,如下图所示,按提示输入数字0后回车,按提示输入6位数字的短信验证码,回车后完成二次验证文件的创建。
Please choose an option: [0]: 0Please enter two-factor authentication code: 123456
十四、所有配置到此结束,重启容器,查看日志,看到以下内容,说明运行成功,在iCloud中生成文件列表,等着自动下载iCloud照片即可,默认为24小时增量下载一次,默认下载原始尺寸文件。
用上述方法,下载iCloud上12740个原尺寸照片及视频,用时9小时45分钟完成,而采用iPhone下载,从2月6日18点52分13秒开始,到现在(2月9日18点56分)刚好72个小时,还剩5660个文件等待下载中,期间无数次因为手机内存被占满,导致微信无法使用(提示微信正常使用需5.4G空间),只能删除已下载已备份的内容,来腾出一点运行空间。
一些扩展小知识:1.网上最开始的开源软件是icloud_photos_downloader,也就是【注册表】里搜到的排第二的那个【icloudpd/icloudpd】,由于作者弃更,已经一年多没有更新了,虽然如此,但仍要感谢鼻祖大佬作出的贡献。
2.目前用的【boredazfcuk/icloudpd】是现作者在原【icloudpd】的基础上拓展而来,功能相当全面,配置也很简单,简直上天,可能由于作者对Docker的了解不够深入,所以给出的操作方法依然是Linux命令行的方式来配置,这一点可能导致了很多人第一步就去用Docker去安装一个Linux的操作系统,然后再安装Portainer来管理Docker,白白浪费大量的性能资源,这里还是要提醒大家避坑。
例如以下教程:【知乎】如何备份iCloud照片到NAS?作者一开始就用Docker安装了Ubuntu 20.04环境,然后再用大量的命令行部署Docker环境,接着再安装Docker管理面板Portainer以方便日后管理Docker,循环套娃,浪费掉大量性能。
【知乎】通过icloudpd间接实现iOS后台自动备份照片至群晖作者进行了基础研究,避免了部分资源的浪费,但是用开启群晖SSH,安装SSH客户端,用群晖系统root权限来进行配置,里面也有大量的没必要的操作。
【知乎】群晖用docker的icloudpd同步icloud照片至Synology Photos并自动刷新作者在上一篇教程上进行了修改,可能是排版原因,看的更加不知所云。
【小白记录】群辉 docker iCloud照片原尺寸备份作者采用的是最开始的icloudpd,也是一开始就安装了Ubuntu,最后应该是成功了,但是配置繁琐,容易出错,每次备份100个照片。
3.所有的教程中,时区的设置都是Asia/Shanghai,这是个无效设置,最终结果就是容器运行时间为UTC时间,比北京时间晚8个小时,正确的设置应该是【CST-8】,不介意的话,影响不大,创建容器时可以不新增【TZ】这个变量。
icloudpd的一些扩展功能:小提示:以下变量均可以在容器停止运行时进行增改,来调整相应的设置。
1.设置同步时间周期,默认为86400秒(24小时),自动运行同步iCloud上新增的 内容,如需修改,可在创建容器时,新增一下变量synchronisation_interval,并设置相应的值,例如43200(12小时)、129600(36小时)等,理论上设置为1秒也是可以的,但是苹果倾向于限制过于频繁的访问其服务器链接,默认设置个人认为是最佳值,iPhone会立即将文件上传到iCloud,如果手机丢失,当天拍摄的内容在iCloud也是安全的,容器会在晚上运行时下载这些内容。
synchronisation_interval:43200
2.设置多个容器同步的分钟数,默认为0,如果需要自动同步过多AppleID的iCloud内容,可以进行设置,新增变量synchronisation_delay,例如30分钟,避免多账户同时访问遭到苹果的风控限制。
synchronisation_delay:30
3.设置iCloud账户身份验证类型,默认为2FA,如果启用了双重认证,则有效值为2FA,否则为Web,如iCloud账户未启用双重认证,则必须新增变量authentication_type,设置为Web,如下所示:
authentication_type:Web
4.设置下载目标目录的文件夹结构,变量folder_structure,默认为 {:%Y/%m/%d}(年/月/日),可按需进行调整,例如:年/月
folder_structure:{:%Y/%m}
5.设置是否跳过已下载检查(增量同步),默认为False(不跳过),也就是默认为每次启动只同步新增内容,如果要重新完全同步,可设置变量skip_check的值为True
skip_check:True
6.设置扫描“最近删除”文件夹,并删除其中找到的所有文件,意思是,你手机上删除的照片,是否同步删除,默认为不扫描,也就是不同步删除,如果你想同步删除或恢复,可设置变量auto_delete的值为True
auto_delete:True
7.设置要下载的照片大小,默认为original(原始尺寸),如需调整,可设置变量photo_size的值为original(原始尺寸)、medium(中等质量)、thumb(缩略图),如下所示(二选一):
photo_size:mediumphoto_size:thumb
8.设置是否下载时将HEIC文件转换为JPEG格式,同时保留原始文件,如设置此变量convert_heic_to_jpeg,不论为何值,则转换。
9.设置HEIC文件到JPEG转换的质量,可设置变量jpeg_quality,数值为0(最低质量)到100(最高质量),默认为90,如想得到最高质量的转换,可如下设置:
jpeg_quality:100
10.设置是否强制使用云上贵州为下载源,如你的iCloud由云上贵州运营,而你的NAS又在国外,可以设置变量icloud_china,不论何值,将强制以icloud作为下载源,NAS在国内不用,自动会解析到云上贵州的IP。
以上就是一般用得到的变量设置,如需了解其它不常用的功能设置,可以访问【boredazfcuk/icloudpd】作者在Docker Hub页面,地址:https://registry.hub.docker/r/boredazfcuk/icloudpd/
好了,教程到此结束,那么多照片那么好看、值得纪念,是应该好好保存,祝大家配置顺利,使用愉快!熟练的话,2分钟应该是可以配置好的。
我是王小浪,一个很懒的人,所以很少会耐心出教程,本来准备录个视频的,但是因为懒,不准备出了,我要去带娃子了,以后再检查是否有错别字。
作者声明本文无利益相关,欢迎值友理流,和谐讨论~
声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送至邮件举报,一经查实,本站将立刻删除。转载务必注明出处:http://www.hixs.net/article/20231014/169625493586420.html