手机目前已经是我们非常重要的一个小伙伴了,其数据对我们来说非常重要。一直以来,我都会定期将我的手机整机备份到电脑上。这个过程虽然不麻烦,但每次都需要手动操作,偶尔还会忘记。
有没有更方便的方式完成这个过程呢?这篇博客就分享一下最近和朋友一起鼓捣的一个工具,可以基于 Wi-Fi 自动将 iPhone 的数据备份到 NAS 等 Linux 的服务器。
简介
该工具基于开源项目 libimobiledevice 实现,这是一个用于通过原生协议与 iOS 设备上的服务进行通信的库。
该工具支持通过 docker 的形式部署在 Linux amd64/x86_64 服务器上,功能包括:
- 指定备份时间段;
- 指定备份时间间隔;
- 指定开启备份的最小电量;
- 仅充电时备份;
部署
部署方式很简单,我在飞牛上使用的docker-compose.yml
文件如下,注意以下几个挂载的目录权限即可。我测试了群晖 DSM 7.2 和飞牛上可以成功部署使用。
services:
iosbackup:
image: razeencheng/iosbackup:latest
container_name: iosbackup
restart: always
network_mode: host
privileged: true
environment:
- PORT=9000 # 设置 Web 服务监听的端口
- LOG_LEVEL=INFO # 日志级别,默认 WARN
volumes:
- ./lockdown:/var/lib/lockdown
- ./configs:/configs
- ./backups/:/backups
- /var/run/dbus:/run/dbus
- /dev/bus/usb:/dev/bus/usb
自动备份设置
开启 Wi-Fi 同步
这个工具没法直接开启设备 Wi-Fi 同步功能,需要借助 Mac 或者 PC 来开启。
- Mac
将你的 iPhone 通过 USB 连接 Mac 电脑,手机上点击 信任 你的电脑,并输入密码。然后,打开 Finder,找到你的手机,开启 接入 Wi-Fi 时显示此 iPhone 功能。勾选之后,别忘了应用。
- PC
Windows 上需要下载安装 Apple Devices 软件,软件安装并打开后,将你的 iPhone 通过 USB 连接电脑,手机上点击 信任 你的电脑,并输入密码。在这个软件中开启 接入 Wi-Fi 时显示此 iPhone 功能。同样勾选之后,别忘了应用。
配对与设置
- 设备匹配
Wi-Fi 同步开启之后,将该 iPhone 通过 USB 连接上已经安装了该程序的设备。如果 iPhone 上没有弹出信任该电脑的弹窗,可以点击 “重启 usbmuxd”,稍等2秒。
在信任之后,需要输入密码确认。此时点击一下 “刷新设备状态” 就可以看到该页面上显示了你的设备了。
- 备份设置
接着就可以按照自己的偏好,设置好备份的时间段等。
注意备份目录默认是 /backups
,如果你希望备份到其他目录,需要提前将目录挂载到主机上哦。
同时,设置好后,记得 “保存设置”,配置不会自动保存,需要手动保存一下。
第一次备份时,推荐通过 USB 备份,更稳定,也更快。当一次成功备份后,之后的每次都是增量备份。
- 测试 Wi-Fi 连接
第一次连接后,可以拔掉 USB,刷新页面,查看是否显示 Wi-Fi 已连接。如果没有,尝试 “重启 usbmuxd”,再刷新页面。
如果能正常显示 Wi-Fi 已连接,说明 Wi-Fi 连接正常。注意,需要手机和部署该程序的主机设备在同一个局域网。
- 自动备份
当上面的设置都完成后,开启 自动备份,并保存设置即可。
之后只要满足上面设定的条件,就会自动发起备份。每次发起备份的时候,需要再次在手机上输入密码,密码正确后,就会开始备份。
恢复
备份后数据该怎么恢复呢?这就还要借助我们的 Mac 或 PC 电脑来恢复。
备份后的数据结构如下,都是按照设备的 UUID 来分文件夹的,恢复的时候我们就需要将整个文件夹复制到 Mac 或 PC 上进行恢复。
- Mac
Mac 的备份目录在 ~/资源库/Application Support/MobileSync/Backup/
或 ~/Library/Application Support/MobileSync/Backup/
。
将整个备份拷贝到这个目录后, 在 Finder 中就可以查看到对应的备份,以及可以操作恢复了。
- PC
PC 操作和 Mac 基本一致。备份目录在 C:\[帐户名称]\Apple\MobileSync\Backup
, 例如下图。
将备份文件放到这个目录下,在 Apple Devies
软件中就可以查看到该备份,操作恢复了。
最后
目前测试了 iPhone 16 Pro
和 iPhone 13 mini
iOS18 的情况下,可以成功备份。但由于目前没有闲置设备,当前未进行完整的恢复测试,之后有机会再做一下。有兴趣的、有备用设备的朋友可以尝试一下。
另外,该工具一直是个人在使用,没有大范围测试,可能存在BUG或不稳定因素,遇到问题欢迎留言反馈。