iOS-Geräte-Datensicherungen von iTunes im Dateisystem finden
Führt man Datensicherungen von seinen iOS-Geräten (iPhone, iPad, iPod touch) mit iTunes auf seinem Mac durch (etwa weil man der »Cloud« nicht traut), so werden die Geräte-Backups in der Library des Home-Ordners des Nutzers abgelegt, in Unterverzeichnissen unter ~/Library/Application Support/MobileSync/Backup/ (Leerzeichen in Application Support beachten).
Speichert man die Datensicherungen verschlüsselt ab, so werden auch Kennwörter (zum Beispiel für WLAN, E-Mail-Konten, usw.) mit gesichert und man muß diese nach einer Wiederherstellung aus dem Backup nicht wieder manuell eingeben.
iTunes
In iTunes findet man eine Übersicht der vorliegenden iOS-Datensicherungen unter Preferences → Devices. In jeder Zeile links den Gerätenamen, dann gegebenenfalls ein Schloß-Symbol, wenn das Backup verschlüsselt ist, und rechts das Datum der letzten Sicherung. Zeigt man mit dem Mauszeiger auf eine Zeile, so werden weitere Informationen wie Gerätemodell, dessen iOS-Softwareversion und Seriennummer in einem Tooltip aufgeführt. Über einen Rechtsklick auf den Backup-Namen und Show in Finder kann man sich die Dateien im Dateimanager anzeigen lassen. Nach Auswahl eines Backups kann man es in iTunes auch direkt löschen.
Hat man viele iOS-Geräte und/oder speichern die viele Daten, so kann das Backup-Verzeichnis sehr groß werden – schnell zu groß für die speicherknappen SSDs in den heutigen mobilen und kleinen Macs von Apple. Deshalb möchte man die iOS-Datensicherungen wahrscheinlich auf andere (Speicher-)Systeme wie externe Festplatten, NAS (Network Attached Storage) oder Heim-/Backup-Server verschieben. Vielleicht auch, weil ein früheres Backup eines iOS-Geräts von iTunes durch die aktuelle Datensicherung überschreiben wird.
Zum Wiederherstellen muß man die Backup-Verzeichnisse aber zuerst wieder unverändert an ihren angestammten Platz auf den Mac zurückkopieren.
Kommandozeile
Ist man viel auf der Kommandozeile (Shell, im Terminal) unterwegs, wird
man lieber dort direkt, ohne den Umweg über iTunes und Finder, wissen
wollen, welche der kryptischen Verzeichnisnamen in
~/Library/Application Support/MobileSync/Backup/ zu welchem Backup
gehören. Im jeweiligen Unterverzeichnis gibt es eine XML-Datei
Info.plist, die nach <key>
s in einem <string>
die dazugehörigen
Daten angibt. Keys sind zum Beispiel:
- Build Version
- Device Name
- Display Name
- GUID
- ICCID
- IMEI
- Installed Applications
- Last Backup Date
- Phone Number
- Product Name
- Product Type
- Product Version
- Serial Number
- Target Identifier
Der Target Identifier gibt die Backup-ID an; er entspricht dem Verzeichnisnamen, in dem die Datensicherung liegt.
Man könnte die Info.plist in einem Texteditor öffnen oder nach
Schlüsseln mit grep
wie beispielsweise in grep -A1 'Device Name'
Info.plist
suchen. Mac OS X (OS X, macOS) liefert aber mit
PlistBuddy
in /usr/libexec/ auch ein Programm zum Extrahieren der Daten aus der
XML-Plist (Property List) mit. Zum Beispiel kann man
/usr/libexec/PlistBuddy -c "Print 'Device Name'" -c "Print 'Last Backup Date'" Info.plist
verwenden, um den Gerätenamen und das Datum der letzten Sicherung anzuzeigen – und weiß somit das aktuelle Backup-Verzeichnis besser zuzuordnen.
Shell-Script für Informationen zu allen MobileSync-Backups
Möchte man einen Überblick über alle mit iTunes durchgeführten Backups, könnte man ein Shell-Script wie dieses verwenden (und nach seinem Geschmack anpassen, etwa einige unnötige Keys aus dem Array löschen):
#!/usr/bin/env sh
##set -o errexit
set -o nounset
readonly directory="${HOME}"/Library/Application\ Support/MobileSync/Backup
declare -a keys=(
"Target Identifier"
"Build Version"
"Device Name"
"Display Name"
"GUID"
"ICCID"
"IMEI"
"Last Backup Date"
"Phone Number"
"Product Name"
"Product Type"
"Product Version"
"Serial Number"
)
for file in "${directory}"/*/Info.plist; do
if [ -f "${file}" ]; then
#printf "%s\n" "${file}"
for key in "${keys[@]}"; do
value=$(/usr/libexec/PlistBuddy -c "Print \"${key}\"" "${file}" 2>/dev/null)
status="$?"
if [ "${status}" -eq 0 ]; then
printf "%s: %s\n" "${key}" "${value}"
fi
done
printf "\n"
fi
done
Hat man die iOS-Backups auf einem anderen System als Mac OS X liegen und
deshalb nicht PlistBuddy
zur Verfügung, so könnte man wie beschrieben
auch grep
verwenden oder das entfernte Datensicherungsverzeichnis zum
Beispiel mit sshfs
(etwa im
Paketmanager Homebrew vorhanden) auf einem Mac
mounten und dort PlistBuddy
verwenden.
- Apple: iPhone-, iPad- und iPod touch-Backups finden / Locate backups of your iPhone, iPad, and iPod touch
- Apple: PlistBuddy (Manpage)