iCloud照片下载器完全使用指南
🚀 基础入门:3分钟上手iCloud照片备份
三步安装法
-
获取代码
git clone https://gitcode.com/GitHub_Trending/ic/icloud_photos_downloader cd icloud_photos_downloader -
安装依赖
./scripts/install_deps -
验证安装
icloudpd --version
首次使用流程
-
基础命令模板
icloudpd --username your_apple_id@example.com --directory ~/Pictures/icloud_backup -
认证流程
- 输入Apple ID密码(推荐使用系统密钥链存储)
- 完成两步验证(根据提示输入验证码)
常见问题
Q: 提示"认证失败"但密码正确?
A: 检查是否开启了双重认证,需要使用专用App密码而非账户密码
Q: 能否在无图形界面的服务器上使用?
A: 可以,通过--cookie-directory参数指定缓存位置实现无交互认证
🚀 核心功能:5大场景化解决方案
🌴 旅行照片备份方案
场景需求:旅行期间自动备份手机拍摄的照片,避免存储空间不足
解决方案:
icloudpd --username me@example.com \
--directory ~/TravelPhotos/2024_Summer \
--until-found 5 \
--skip-videos \
--set-exif-datetime
💡 技巧:--until-found 5会在发现5张已存在的照片后停止检查,大幅提升增量同步效率
🧹 空间清理方案
场景需求:下载后自动清理云端旧照片,释放iCloud存储空间
解决方案:
icloudpd --username me@example.com \
--directory ~/Pictures/icloud_archive \
--keep-icloud-recent-days 30 \
--size original
⚠️ 注意:此操作会删除云端照片,请先确认本地备份完整
🎥 视频专项备份
场景需求:仅下载视频文件并按年份分类存储
解决方案:
icloudpd --username me@example.com \
--directory ~/Videos/iCloud \
--folder-structure "{:%Y}" \
--skip-photos \
--recent 50
💡 技巧:--folder-structure支持strftime格式,可按拍摄时间自动分类
🕵️ 选择性下载方案
场景需求:仅下载特定相册的照片
解决方案:
# 先列出所有相册
icloudpd --username me@example.com --list-albums
# 下载指定相册
icloudpd --username me@example.com \
--directory ~/Pictures/FamilyAlbum \
--album "家庭聚会"
🌐 国内用户优化方案
场景需求:解决国内访问iCloud速度慢的问题
解决方案:
icloudpd --username me@example.com \
--directory ~/Pictures/iCloud \
--domain .cn \
--watch-with-interval 3600
💡 技巧:--domain .cn参数将请求路由到中国区服务器,提升访问速度
常见问题
Q: 如何查看所有可用相册?
A: 使用--list-albums参数获取相册列表,中文相册名需注意编码问题
Q: 下载的照片方向不正确怎么办?
A: 添加--set-exif-datetime参数会自动修复EXIF方向信息
🚀 高级应用:专家级功能探索
🔄 无人值守同步方案
场景需求:7×24小时自动同步iCloud照片
实现步骤:
-
创建同步脚本
sync_icloud.sh:#!/bin/bash icloudpd --username me@example.com \ --directory /media/backup/icloud \ --until-found 10 \ --watch-with-interval 1800 \ --log-level info \ --log-file /var/log/icloud_sync.log -
设置权限并添加到系统服务:
chmod +x sync_icloud.sh # 配置systemd服务实现开机自启
📊 元数据管理方案
场景需求:保留照片完整元数据,支持专业后期处理
解决方案:
icloudpd --username me@example.com \
--directory ~/ProfessionalPhotos \
--xmp-sidecar \
--keep-unicode-in-filenames \
--set-exif-datetime
⚠️ 注意:--xmp-sidecar会为每张照片生成.xmp元数据文件,需确保存储空间充足
🔒 多账户隔离方案
场景需求:管理多个iCloud账户的照片备份
解决方案:
# 账户1:个人照片
icloudpd --username personal@example.com \
--directory ~/iCloud/Personal \
--cookie-directory ~/.pyicloud/personal
# 账户2:工作照片
icloudpd --username work@example.com \
--directory ~/iCloud/Work \
--cookie-directory ~/.pyicloud/work
常见问题
Q: 如何监控同步状态?
A: 结合--log-file和邮件通知功能,使用--email-notifications参数配置告警
Q: 同步中断后会重复下载吗?
A: 不会,工具会自动识别已下载文件,可使用--until-found 0强制完整检查
🚀 实战案例:从新手到专家
新手避坑指南
错误案例1:命令行直接输入密码
错误做法:
icloudpd --username me@example.com --password mypassword123 # 危险!
正确做法:
省略--password参数,让工具交互式提示输入,或使用密钥链存储
错误案例2:盲目使用自动删除功能
错误做法:
icloudpd --username me@example.com --delete-after-download # 已废弃!
正确做法:
使用更安全的--keep-icloud-recent-days参数:
icloudpd --username me@example.com --keep-icloud-recent-days 30
错误案例3:忽视存储空间监控
错误做法:
无限制同步所有照片导致磁盘空间耗尽
正确做法:
结合--size和--recent参数控制下载量:
icloudpd --username me@example.com --size medium --recent 100
参数组合速查表
| 使用场景 | 命令模板 | 核心优势 |
|---|---|---|
| 快速测试 | icloudpd --username me@example.com --recent 5 --dry-run |
安全验证配置,不实际下载 |
| 增量同步 | icloudpd --username me@example.com --until-found 10 |
智能断点续传,节省时间 |
| 空间清理 | icloudpd --username me@example.com --keep-icloud-recent-days 30 |
自动清理旧照片,释放空间 |
| 视频备份 | icloudpd --username me@example.com --skip-photos --folder-structure "{:%Y/%m}" |
按年月分类存储视频 |
| 服务器同步 | icloudpd --username me@example.com --watch-with-interval 3600 --log-file sync.log |
无人值守,持续同步 |
企业级部署建议
- 多账户管理:为每个账户创建独立配置文件和缓存目录
- 存储策略:使用RAID存储确保数据安全,定期校验文件完整性
- 监控告警:配置日志监控和邮件通知,及时发现同步异常
- 权限控制:限制执行用户权限,避免敏感信息泄露
常见问题
Q: 企业环境中如何批量部署?
A: 使用配置文件存储参数,结合脚本实现批量账户管理
Q: 如何处理大量历史照片的首次同步?
A: 分阶段进行,先使用--recent小批量测试,再逐步扩大范围
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedJavaScript095- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
MiMo-V2.5-ProMiMo-V2.5-Pro作为旗舰模型,擅⻓处理复杂Agent任务,单次任务可完成近千次⼯具调⽤与⼗余轮上 下⽂压缩。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
Kimi-K2.6Kimi K2.6 是一款开源的原生多模态智能体模型,在长程编码、编码驱动设计、主动自主执行以及群体任务编排等实用能力方面实现了显著提升。Python00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00