rictl을 사용하여 명령 줄에서 백업 작업

업데이트 됨

iPhone Backup Extractor에는 iOS 백업 및 장치 작업을위한 rictl 이라는 명령 줄 도구가 포함되어 있습니다. rictl 은 iPhone Backup Extractor가 실행되는 모든 플랫폼에서 실행되며 인수 및 도움말 구문 및 쉘 리턴과 관련하여 유닉스 스타일의 명령 행 도구처럼 작동합니다.

기능 요약 :

  • UNIX 호환 형식 ( $? 쉘 반환 코드, 로케일 형식 날짜, awk 친숙한 출력, 내 보낸 데이터의 stdout 스트림)
  • 여러 동시 검색 경로 지원
  • 모든 형식의 암호화 된 백업 지원
  • 상대 및 홈 기반 ( ~ ) 경로 지원

 klzzwxh:0002  shown in macOS Terminal
macOS 터미널에 표시된 rictl

 klzzwxh:0004  shown in Windows Command Prompt
Windows 명령 프롬프트에 표시된 rictl

빠른 시작 : iOS 백업에서 데이터베이스 파일 추출

로컬 시스템에서 사용할 수있는 백업 찾기 :

$ rictl backup search
00000000-0000000000000000 02/07/2019 11:33:41 12.3.1 iPhone11,6 ok

백업에서 모든 데이터베이스 파일의 압축을 풉니 다 (정규식 형식 참고).

$ 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
...

명령 용어집

도움을 받다

rictl help 명령을 사용하여 rictl 대로 rictl 을 사용하여 도움을 얻을 수 있습니다.

$ rictl help
Usage: rictl <command> [args]

Available commands:
   backup   Work with a local backup

Use 'rictl help <command>' for detailed help on a particular command

현재 rictl 은 로컬 백업 작업을위한 backup 모드를 제공합니다.

로컬 백업 작업

$ 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

백업 작업을 할 때 search , info , list , extractexport 등 5 가지 옵션이 있습니다.

search 을 사용하여 로컬 iOS 백업을 검색합니다.

$ 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

가장 간단한 방법으로 시스템의 백업을 search 할 수 있습니다.

$ rictl backup search
00000000-0000000000000000 02/07/2019 11:33:41 12.3.1 iPhone11,6 ok

표시된 필드는 공백으로 구분되며 다음과 같습니다.

옵션 -l 은 백업 경로를 표시합니다.

-l 을 사용하여 백업 경로에 추가 출력 필드를 포함시킬 수 있습니다.

$ 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
옵션 -s 추가 경로를 검색합니다.

-s 를 사용하여 백업을 찾을 때 추가 검색 경로를 포함 할 수 있습니다.

$ 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
  • 예상대로 ( "My folder" ) 또는 경로에서 이스케이프 ( My\ folder ) 공백을 사용할 수 있습니다
  • -s 백업 폴더 또는 백업을 포함하는 폴더를 지정하는 데 사용할 수 있습니다

info 를 사용하여 로컬 iOS 백업에서 정보 및 메타 데이터 얻기

$ 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

그것을 시도해 봅시다 :

$ 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••••••

물론 iOS 기기의 UDID 는 고유하지만 컴퓨터에 백업본이 두 개 이상있을 수 있습니다 (예 : 보관 된 백업이있는 경우).

$ 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'.

해결책은 무엇입니까? 백업 폴더가 포함 된 폴더 아닌 백업이있는 폴더를 지정하여 검색 경로를 좁히십시오!

$ 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••••••

list 을 사용하여 iOS 백업에서 파일 목록 표시

$ 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

그것을 시도하자 :

$ 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
...

extract 을 사용하여 iOS 백업에서 파일 추출

$ 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

의 모든 추출하자 .db 라는 이름의 폴더에 백업에서 파일을 Extracted , 그리고 백업 암호까지 제공 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
...

export 를 사용하여 iOS 백업에서 데이터 내보내기

$ 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

내 보낸 데이터는 ricloud API에서 사용하는 것과 동일한 JSON 형식으로 사용할 수 있으며이 형식은 여기설명되어 있습니다 .

백업에서 모든 메시지 데이터를 추출해 봅시다. 이 데이터는 콘솔의 표준 출력 스트림 ( stdout )에 반환 될 것이므로 messages.json 이라는 파일로 리디렉션 할 것입니다. 연결된 파일을 Associated files 폴더에 저장하고 비밀번호 백업 비밀번호를 제공 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": []
  },
...

경로에 rictl 추가하기

iPhone Backup Extractor는 Preferences 패널을 사용하여 Windows 또는 MacOS 컴퓨터 경로에 rictl 을 자동으로 추가하여 컴퓨터의 모든 터미널에서 쉽게 사용할 수 있습니다.

iPhone Backup Extractor's "Scripting" preferences pane
iPhone Backup Extractor의 "스크립팅"환경 설정 패널

그러나 경로를 직접 설정하거나 alias 명령을 사용할 수도 있습니다. rictl 의 기능은 wrapper 스크립트가 보여주는 것처럼 iPhone Backup Extractor의 바이너리를 통해 액세스됩니다.

$ cat `which rictl`
#!/bin/bash
/Applications/iPhone\ Backup\ Extractor.app/Contents/MacOS/iPhoneBackupExtractor cli "$@"

파일 검색에 대한 일반적인 정규 표현 패턴

  • 텍스트 plist 끝나는 경로 찾기 : -r plist$
  • 파일 확장명이 .db 경로 찾기 : -r \.db

기업용

rictl 기능은 iPhone Backup Extractor의 기능을 광범위하게 따릅니다.이 도구는 백업을 탐색 할 때 무제한으로 작업을 허용하지만 실행될 때마다 최대 4 개의 파일 만 추출하거나 4 개의 데이터 항목을 내보낼 수 있습니다. 이 도구를 여러 번 실행하면 제거 할 수 있습니다.

우리는 기술이 어떻게 사용되는지에 대해 듣고 싶어하며,이 기술 위에 내부 관리 또는 규정 준수 도구 또는 제품을 구축 한 여러 비즈니스를 지원합니다. 이것이 귀중한 것이라면 우리와 연락하십시오 .

어떻게 도와 드릴까요?

지원 팀이 도와 드리겠습니다!

근무 시간은 월요일부터 금요일, 오전 9 시부 터 오후 5시 (그리니치 표준시)입니다. 시간은 현재 2:00 오전 GMT입니다.

우리는 1 일 이내에 모든 메시지에 답장하고자합니다.

지원 섹션으로 이동 › 문의하기 ›
우리의 멋진 지원 팀

이 기사를 개선 할 수 있습니까?

사용자의 의견을 듣고 싶습니다. 전자 메일을 보내지 말고, 의견을 남기거나, 트윗하지 마십시오. @reincubate?

© 2008 - 2019 Reincubate Ltd. 판권 소유. 영국과 웨일즈에 등록 #5189175, VAT GB151788978. Reincubate®는 등록 상표입니다. 개인 정보 및 이용 약관. 우리는 2FA를 권장합니다. 런던에서 Built로 지어졌습니다.