iBackupExtractor: iOSバックアップからファイルを抽出する
iOS バックアップ アーカイブからファイルを抽出するためのシンプルなツール。ローカルでビルド プロジェクトをローカルでビルドするには、Cargo を使用します。 使用法 まず、抽出するバックアップ アーカイブを見つけます。
ひと目でわかる
- これは何?
- iOSバックアップアーカイブを読み取り、元のサンドボックスディレクトリ構造を復元して、閲覧・抽出・移行を可能にするRust製ツール。
- 誰に向いている?
- iBackupExtractorは、暗号化されていないiOSバックアップアーカイブ向けの小さなコマンドラインツールです。検査・抽出・移行のサブコマンドを備え、デフォルトでファイルをコピーし、シンボリックリンクを作成することもでき、アーカイブに書き込むのは移行時のみです。
- 商用利用できる?
- できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
- 今もメンテナンスされている?
- 活動が鈍っています。最後のコミットは 6 か月前です。
- 何の言語で書かれている?
- 主に Rust です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
unixzii/ibackupextractorのバックアップ形式の問題
iOS のバックアップファイルは、アプリのサンドボックスの元のディレクトリ構造と同じようには保存されていません。バックアップアーカイブ内でのファイルの位置は、デバイス上のどこに属していたかを示さないため、サンドボックスから特定のファイルを取り出すのは、正しいパスをコピーするだけでは済みません。iBackupExtractor はアーカイブ全体を読み取り、元の構造でファイルを書き出すため、iPhone や iPad に保存されていたときのサンドボックスのファイルシステムを閲覧できます。README は、アーカイブが `Manifest.db` ファイルを含むディレクトリであると述べるだけで、内部形式については説明していません。
unixzii/ibackupextractorのインストールの経路
このプロジェクトは、Mac ユーザー向けのプリビルドバイナリを GitHub releases ページで公開しています。README には他のプラットフォーム向けのバイナリは記載されていません。ローカルでビルドする場合、プロジェクトは Rust で書かれており Cargo を使います。ドキュメントに記載されたビルドコマンドは `cargo build --release` です。必要な Rust のバージョンや、Cargo 以外のビルド環境については README に書かれていません。
unixzii/ibackupextractorのアーカイブの場所と読み取り専用での開き方
バックアップアーカイブは通常、`/Users/<username>/Library/Application Support/MobileSync/Backup` にあります。README では、アーカイブは `Manifest.db` ファイルを含むディレクトリと定義されています。ツールはマイグレーションを実行する場合を除き、`Manifest.db` を読み取り専用で開くため、読み取り専用のファイルシステム(Linux 上の HFS+ など)にあるアーカイブでも動作します。README は、データの唯一のコピーを扱わないよう警告しています。複数のバックアップディレクトリからどれを選ぶかや、ディレクトリが有効なアーカイブかどうかを確認する方法は説明されていません。
unixzii/ibackupextractorのアーカイブの確認: info と list-domains
抽出の前に、アーカイブを検査するためのサブコマンドが2つあります。`info` はアーカイブレベルのメタデータ、つまりマニフェストの場所、タイムスタンプ、デバイスと iTunes のメタデータ、ファイル数とドメイン数の合計、ディスク上の合計サイズを出力します。`list-domains` はアーカイブ内のドメインを、それぞれのエクスポート可能なデータ量でソートして一覧表示します。README はこれら2つのビューを区別しています。`info` はアーカイブレベル、`list-domains` はドメインレベルです。正確な出力形式や、ソートが昇順か降順かは README に明記されていません。
unixzii/ibackupextractorのファイルの抽出: コピーかリンクか
`extract` サブコマンドは、`-d` で1つのドメインを選ぶか、`--all` でデータのあるすべてのドメインを抽出し、その後にアーカイブのパスと出力先ディレクトリを指定します。例: `ibackupextractor extract --all /path/to/your_backup_archive /path/to/dest_dir`、または `ibackupextractor extract -d SomeDomain /path/to/your_backup_archive /path/to/dest_dir`。README は空の出力先ディレクトリを推奨し、既存ファイルに上書きしようとするとエラーになると述べています。デフォルトでは抽出はファイルをコピーします。`-L`(または `--link`)オプションを指定すると、シンボリックリンクを作成してディスク容量を節約します。Windows やシンボリックリンクをサポートしないファイルシステムでの抽出がどうなるかは README に書かれていません。
unixzii/ibackupextractorのバックアップ間でのドメイン移行
`migrate` サブコマンドは、ドメイン単位でファイルをあるバックアップアーカイブから別のバックアップアーカイブに転送し、元のディレクトリ構造を保持します。コマンドは `-d` でドメインを指定し、その後にソースアーカイブと宛先アーカイブを指定します: `ibackupextractor migrate -d SomeDomain /path/to/source_backup_archive /path/to/dest_backup_archive`。`extract` と同様、`migrate` はデフォルトでファイルをコピーし、`-L` を指定すると宛先アーカイブ内にシンボリックリンクを作成します。移行には宛先アーカイブへの読み書きアクセスが必要です。ソースアーカイブが書き込み可能でなければならないか、宛先に既存データがある場合のチェックについては README に書かれていません。
unixzii/ibackupextractorの制限とライセンス
このツールは暗号化されていないバックアップアーカイブのみ扱えます。README は、バックアップを開始する前に暗号化オプションをオフにするよう指示しています。`info`、`list-domains`、`extract` の各コマンドはアーカイブに書き込みませんが、`migrate` は宛先アーカイブにのみ書き込みます。このプロジェクトは MIT ライセンスで提供され、著作権は Cyandev 2023 に帰属します。このライセンスは、使用、コピー、変更、結合、公開、配布、サブライセンス、および販売を許可し、ソフトウェアは現状のまま、いかなる保証もなく提供されると述べています。README には、パフォーマンス特性、セキュリティ特性、対応 iOS バージョンについては記載がありません。
編集部の結論
iBackupExtractorは、暗号化されていないiOSバックアップアーカイブ向けの小さなコマンドラインツールです。検査・抽出・移行のサブコマンドを備え、デフォルトでファイルをコピーし、シンボリックリンクを作成することもでき、アーカイブに書き込むのは移行時のみです。READMEには、対応iOSバージョンや非UNIXファイルシステムでのシンボリックリンクの動作など、運用前に確認すべき点がいくつか記載されていません。
コミュニティノート