Arbeiten mit iOS-Geräten und Backups in der Befehlszeile
iPhone Backup Extractor enthält ein Befehlszeilentool namens rictl
für die Arbeit mit iOS-Backups und -Geräten. rictl
auf jeder Plattform ausgeführt werden, auf der iPhone Backup Extractor ausgeführt wird, und funktioniert in Bezug auf Argumente und Hilfesyntax sowie Shell-Rückkehr wie jedes Befehlszeilentool im UNIX-Stil.
Funktionen auf einen Blick:
- UNIX-kompatibles Format (
$?
Shell-Rückkehrcodes, Datumsangaben im Gebietsschema-Format, awk-freundliche Ausgabe,stdout
Streams exportierter Daten) - Unterstützung für mehrere Suchpfade gleichzeitig
- Unterstützung für alle Formate von verschlüsselten Backups
- Unterstützung für relative und Home-basierte (
~
) Pfade
Schnellstart: Extrahieren Sie Datenbankdateien aus einer iOS-Sicherung
Suchen Sie nach Backups, die auf dem lokalen System verfügbar sind:
$ rictl backup search
00000000-0000000000000000 02/07/2019 11:33:41 12.3.1 iPhone11,6 ok
Extrahieren Sie alle Datenbankdateien aus der Sicherung (beachten Sie das Format für reguläre Ausdrücke):
$ rictl backup extract -u 00000000-0000000000000000 -r "\.db" Extracting HomeDomain/Library/Voicemail/voicemail.db Extracting HomeDomain/Library/Safari/Bookmarks.db Extracting RootDomain/Library/Caches/locationd/consolidated.db Extracting WirelessDomain/Library/CallHistory/call_history.db ...
Befehlsglossar
Hilfe bekommen
Sie können Hilfe bei der Verwendung erhalten rictl
wie man erwarten würde, mit dem rictl help
Befehl:
$ rictl help Usage: rictl <command> [args] Available commands: backup Work with a local backup device Work with devices over USB and Wi-Fi Use 'rictl help <command>' for detailed help on a particular command
rictl
exposes a backup
mode for working with local backups, and a device
mode for working with iOS devices over USB or Wi-Fi.
Arbeiten mit lokalen Sicherungen
$ rictl help backup Usage: rictl backup <command> [args] Work with local backups Available commands: search Search for local backups info Show info about a backup list List files in a backup extract Extract files from a backup export Export data from a backup Use 'rictl help backup <command>' for detailed help on a particular backup command
Bei der Arbeit mit Backups gibt es fünf Optionen: search
, info
, list
, extract
und export
.
Verwenden der search
zum Suchen nach lokalen iOS-Sicherungen
$ rictl help backup search Usage: rictl backup search [args] Search for local backups Available arguments: -s, --search-path=VALUE path to search for backups (two directories deep) -l include full path in listing output -h, --help show this message and exit
Im einfachsten search
zeigt die search
die Backups auf Ihrem System an:
$ rictl backup search
00000000-0000000000000000 02/07/2019 11:33:41 12.3.1 iPhone11,6 ok
Die angezeigten Felder sind durch Leerzeichen getrennt und lauten:
-
UDID
- Sicherungserstellungszeit
- iOS-Geräteversion
- iOS-Gerätekennung
- Sicherungsstatus:
ok
oderin-progress
Option -l
zeigt Sicherungspfade an
Sie können -l
, um ein zusätzliches Ausgabefeld in den Pfad der Sicherung aufzunehmen:
$ rictl backup search -l
00000000-0000000000000000 02/07/2019 11:33:41 12.3.1 iPhone11,6 ok /Users/afit/Library/Application Support/MobileSync/Backup/00000000-0000000000000000
Option -s
sucht nach zusätzlichen Pfaden
Sie können -s
, um zusätzliche Suchpfade bei der Suche nach Backups einzuschließen.
$ rictl backup search -s /Users/afit/Google\ Drive\ File\ Stream/My\ Drive/My\ backups/ -s Downloads/ 00000000-0000000000000000 02/07/2019 11:33:41 12.3.1 iPhone11,6 ok DB72CB76A00CB81675F19907D4AC2B298628D83C 09/06/2014 13:57:08 7.1.1 iPhone6,2 ok DB72CB76A00CB81675F19907D4AC2B298628D83C 23/07/2014 12:37:55 8.0 iPhone6,2 ok DB72CB76A00CB81675F19907D4AC2B298628D83C 28/07/2014 12:43:56 8.0 iPhone6,2 ok CDBF062964613D325EB9E41AD83E85EA16B7E399 10/02/2014 14:29:59 7.0.4 iPad4,1 ok 57BE3B9E8087809F53666B887B9DD81B06299078 29/07/2014 14:18:54 7.1 iPhone3,1 ok F60040E968F533434B9B6CCA10C7E0C673B7CC13 07/10/2014 09:44:17 8.0.2 iPhone7,2 ok CC5D2A27218BD9E4A14B1E59918171A8676EF5BB 26/03/2015 11:07:42 2.2.1 iPhone1,1 ok 46A663D1A1A5C5146476A2C6164EA5F5FE771294 26/03/2015 11:09:54 4.2.1 iPhone1,2 ok 9F8FDEEFFCDA4BD53CA4D6F8229A04497CA5FA4C 31/10/2016 17:05:36 10.1.1 iPhone9,4 ok
- Wie zu erwarten, können Sie in Pfaden Leerzeichen in Anführungszeichen (
"My folder"
) oder Escapezeichen (My\ folder
) setzen -
-s
kann verwendet werden, um einen Sicherungsordner oder einen Ordner mit Sicherungen anzugeben
Verwenden von info
zum Abrufen von Informationen und Metadaten aus lokalen iOS-Sicherungen
$ rictl help backup info Usage: rictl backup info [args] Show info about a backup Available arguments: -u, --udid=VALUE backup UDID -s, --search-path=VALUE path to search for backups (two directories deep) -h, --help show this message and exit
Probieren wir das aus:
$ rictl backup info -u 00000000-0000000000000000 UDID: 00000000-0000000000000000 Path: /Users/afit/Library/Application Support/MobileSync/Backup/00000000-0000000000000000 Backup in progress: False Device name: Aidan's iPhone Backup display name: Aidan's iPhone Backup date: 02/07/2019 11:33:41 Backup size: 104258399691 bytes Backup encrypted: True Product version: 12.3.1 Product type: iPhone11,6 Serial number: FK1XH•••KPH6 Phone Number: +44 •••• •••••• ICCID: 894411••••••••••••5 MEID: 35728209••••••
UDID
die UDID
des iOS-Geräts UDID
ist, befinden sich möglicherweise mehrere Sicherungen auf Ihrem Computer, z. B. wenn Sie über eine archivierte Sicherung verfügen.
$ rictl backup search -l | grep B919 DB72CB76A00CB81675F19907D4AC2B298628D83C 09/06/2014 13:57:08 7.1.1 iPhone6,2 ok /Users/afit/Library/Application Support/MobileSync/Backup/backup1 DB72CB76A00CB81675F19907D4AC2B298628D83C 23/07/2014 12:37:55 8.0 iPhone6,2 ok /Users/afit/Library/Application Support/MobileSync/Backup/backup2 DB72CB76A00CB81675F19907D4AC2B298628D83C 28/07/2014 12:43:56 8.0 iPhone6,2 ok /Users/afit/Library/Application Support/MobileSync/Backup/backup3
$ rictl backup info -u DB72CB76A00CB81675F19907D4AC2B298628D83C Multiple backups found with UDID DB72CB76A00CB81675F19907D4AC2B298628D83C. Use the '--search-path' option to specify the backup's location. This can be shown with the '-l' argument on 'rictl backup search'.
Was ist die Lösung? Grenzen Sie den Suchpfad ein, indem Sie den Ordner angeben, in dem sich die Sicherung befindet, und nicht den Ordner , der den Sicherungsordner enthält !
$ rictl backup info -s /Users/afit/Library/Application Support/MobileSync/Backup/backup3 -u DB72CB76A00CB81675F19907D4AC2B298628D83C UDID: DB72CB76A00CB81675F19907D4AC2B298628D83C Path: /Users/afit/Library/Application Support/MobileSync/Backup/backup3 Backup in progress: False Device name: Aidan's iPhone Backup display name: Aidan's iPhone Backup date: 28/07/2014 12:43:56 Backup size: 239001214 bytes Product version: 8.0 Product type: iPhone6,2 Serial number: C7KNG•••G5MV Phone Number: +44 •••• •••••• ICCID: 894411••••••••••••5 MEID: 35728209••••••
Verwenden der list
zum Auflisten von Dateien in einer iOS-Sicherung
$ rictl help backup list Usage: rictl backup list [args] List files in a backup Available arguments: -u, --udid=VALUE backup UIUD -s, --search-path=VALUE path to search for backups (two directories deep) -p, --password=VALUE backup password -l use a long listing format -r, --pattern=VALUE file pattern (regex) --allow-in-progress allow use of in-progress backups -h, --help show this message and exit
Probieren wir es aus:
$ rictl backup list -u 00000000-0000000000000000 -r plist$ -l rw-r--r-- 321 24/06/2019 13:04:37 ManagedPreferencesDomain\mobile\.GlobalPreferences.plist rw------- 16975 21/06/2019 14:52:54 AppDomainPlugin-com.apple.stocks.widget\Library\Preferences\com.apple.stocks.widget.plist rw-r--r-- 219 01/07/2019 09:37:24 HomeDomain\Library\UserNotifications\A4CCFF5B-F963-425F-8068-729972F77C67\DeliveredNotifications.plist ...
Verwenden von extract
zum Extrahieren von Dateien aus einer iOS-Sicherung
$ rictl help backup extract Usage: rictl backup extract [args] Extract files from a backup Available arguments: -u, --udid=VALUE backup UIUD -s, --search-path=VALUE path to search for backups (two directories deep) -p, --password=VALUE backup password -o, --output-path=VALUE path to extract files to -r, --pattern=VALUE file pattern (regex) --allow-in-progress allow use of in-progress backups -h, --help show this message and exit
Lassen Sie uns alle .db
Dateien aus einer Sicherung in einen Ordner mit dem Namen " Extracted
und ein Sicherungskennwort "password" password
:
$ rictl backup extract -u 00000000-0000000000000000 -r "\.db" -o "Extracted" -p "password" Extracting HomeDomain/Library/Voicemail/voicemail.db Extracting HomeDomain/Library/Safari/Bookmarks.db Extracting RootDomain/Library/Caches/locationd/consolidated.db Extracting WirelessDomain/Library/CallHistory/call_history.db ...
Verwenden des export
zum Exportieren von Daten aus einer iOS-Sicherung
$ rictl help backup export Usage: rictl backup export [args] Export data from a backup Available arguments: -u, --udid=VALUE backup UIUD -s, --search-path=VALUE path to search for backups (two directories deep) -p, --password=VALUE backup password -t, --type=VALUE data type (messages, whatsapp, viber, kik, wechat, line, hike, tinder, photos, videos, recordings, contacts, calendar, notes, calls, locations, voicemail) -o, --output-path=VALUE associated file output path -r, --pattern=VALUE search pattern (regex) -f, --force allow overwriting exising files --allow-in-progress allow use of in-progress backups -h, --help show this message and exit
Exportierte Daten werden im selben JSON-Format wie die ricloud-API zur Verfügung gestellt. Diese Formate werden hier dokumentiert .
Lassen Sie uns alle Nachrichtendaten aus einer Sicherung extrahieren. Diese Daten würden im Standardausgabestream der Konsole ( stdout
) zurückgegeben, daher leiten wir sie in eine Datei namens messages.json
. Wir werden alle zugehörigen Dateien in einem Ordner speichern namens Associated files
und bieten ein Backup - Passwort von bis password
:
$ rictl backup export -u 00000000-0000000000000000 -t messages -o "Associated files" -p "password" > messages.json ...
$ cat messages.json [ { "From": "789789", "To": "Me", "Date": "2012-12-17T14:12:30Z", "Deleted": false, "Message": "All done! You're now on our Big Data Texts Tariff. We switched you over on 17/12/12", "Attachments": [] }, { "From": "789789", "To": "Me", "Date": "2012-12-17T18:12:50Z", "Deleted": false, "Message": "You have 300 Texts and Unlimited data", "Attachments": [] }, ...
Mit Geräten arbeiten
$ rictl help device Usage: rictl device <command> [args] Work with devices over USB and Wi-Fi Available commands: search Show connected devices over USB and Wi-Fi backup Backup a connected device restart Restart a connected device shutdown Shutdown a connected device Use 'rictl help device <command>' for detailed help on a particular device command
Bei der Arbeit mit Geräten gibt es vier Optionen: search
, backup
, restart
und shutdown
.
Hinzufügen von rictl
zu Ihrem Pfad
Der iPhone Backup Extractor kann mithilfe des Preferences
automatisch rictl
zum rictl
Ihres Windows- oder MacOS-Computers hinzufügen, sodass er problemlos auf jedem Terminal Ihres Computers verwendet werden kann.
Sie können den Pfad jedoch auch selbst festlegen oder einen alias
Befehl verwenden. rictl
die Funktionen von rictl
wird über die Binärdatei von iPhone Backup Extractor zugegriffen, wie das Wrapper-Skript zeigt:
$ cat `which rictl` #!/bin/bash /Applications/iPhone\ Backup\ Extractor.app/Contents/MacOS/iPhoneBackupExtractor cli "$@"
Allgemeine Muster für reguläre Ausdrücke bei der Dateisuche
- Suchen von Pfaden, die mit der
plist
enden:-r plist$
- Suchen von Pfaden mit der Dateierweiterung
.db
:-r \.db
Enterprise-Nutzung
Die Fähigkeiten von rictl
folgen im Großen und Ganzen denen von iPhone Backup Extractor: Das Tool erlaubt einen uneingeschränkten Betrieb zum Durchsuchen von Backups, extrahiert jedoch bei jeder Ausführung nur bis zu vier Dateien oder exportiert vier Datenelemente gleichzeitig.
Wir sind gespannt darauf, wie die Technologie eingesetzt wird, und unterstützen eine Reihe von Unternehmen, die ihre internen Management- oder Compliance-Tools oder -Produkte auf dieser Technologie aufbauen. Bitte setzen Sie sich mit uns in Verbindung, wenn dies für Sie von Nutzen sein könnte.