iPhoneのSMS/MMSバックアップ(脱獄不要)

何をいまさら、と言われるかもしれませんがあくまでも自分のための備忘録なので・・・

脱獄すれば簡単なのですが、あくまでも脱獄してない場合。
ちなみに"iPhone Backup Extractor"を使うためMacユーザー限定です。

手順
・”iPhone Backup Extractor”をここからダウンロード。
このソフトがMac版だけだからMacユーザー限定なわけね。

・iTunesに接続してiPhoneのバックアップを作成する
・iPhone Backup Extractorで”Read Backups"ボタンを押してバックアップしたい日付のDevice Nameを選ぶ
・"Choose"を押す
・"Application Name”で"iPhone OS Files"を選択して任意のフォルダを指定して書き出す
・保存したフォルダ内で"iPhone OS Files/Library/SMS/sms.db"が保存される

このファイルがSMS/MMSに関するデータを持っているわけね。

sms.dbはSQLite Database Browserで読めます。Mac版はここからダウンロード。csvファイルに書き出せば無事にバックアップ完了です。

ちなみに元々は
/var/mobile/Library/SMS/sms.db
に保存されているので脱獄していれば読み書きは簡単。

どうやらiTunesに接続してバックアップする際には階層構造をわざと隠してバックアップするみたいですね。だからバックアップフォルダ(~/Library/Application Support/MobileSync/Backup)から該当ファイルを抜き出すのは面倒。無理ではないみたいだけど。
市販のSMSバックアップソフトやサイトはこのバックアップされたファイルを解析してSMSデータを抜き出すんでしょうな。ま、”iPhone Backup Extractor”に出来るんだからそれほど難しくないんでしょうね。

実はまだ続く・・・

コメント

  1. 初めまして.
    ブログを拝見させていただきました.
    バックアップを取ったSMSのデータをiPhoneに戻す方法を探しているのですが,脱獄する方法しかないのでしょうか?
    もし脱獄しなくても良い方法を御存知でしたら,教えていただけないでしょうか?

    返信削除
  2. 初めまして。読んでいただいてありがとうございます。

    残念ながら私の知識不足のため脱獄せずにSMS/MMSデータを戻す方法は知りません。上記データはルートディレクトリで管理されているため少なくともルートを取る必要があると思うのですが、脱獄せずに出来ないのではないか?と思っています。

    ただ、脱獄してSMS/MMSデータを戻してから再度入獄すれば結果的には非脱獄iPhoneにデータを戻せるのではないかと思います。

    お役に立てず申し訳ありません。

    返信削除
  3. 初めまして
    iphone,SMSバックアップで検索してきました。
    書き出したCSVファイルが文字化けしてしまうので、猛禽たぬきさんがどう書き出しているか教えていただければと思ってコメントしました。

    こちらは、
    Open Databaseでsms.dbを開く
    File/Export/Table as CSV fileを選択
    Table nameでmessage,ファイル名は名称未設定のまま書き出し

    そして、Excelでインポートしています

    返信削除
  4. 初めまして。読んでいただいてありがとうございます。

    ゴンタさんの手順で作業してみましたが、Excelで開くと確かに文字化けしますね。
    そこでmiで開いてみたら文字化けはありませんでした。
    Numbersでも問題なく開けました。

    原因はよく分かりませんがExcelの文字コードの扱いがあまり賢くないからではないでしょうか?

    お役に立てると良いのですが・・・

    返信削除
  5. 初めまして。
    iOS5にアップデートするのに、MMSが絶対に消えて欲しくなかったので、記事がとても参考になりました。
    有り難うございます。
    そして、質問なのですが、MIで開くとメールの内容と共にタグ類も表示されますよね?これはどうしようもないのでしょうか?
    また、ゴンタさんの質問で送信メールのファイルは分かったのですが、受信メールはどれになるのでしょうか?
    教えて頂けると有り難いです。よろしくお願いします。

    返信削除
  6. 初めまして。コメントありがとうございます。
    ご質問の内容について検証しようとしたのですが、SQLite Database Browser 2.0 b1からsms.dbを開こうとしたら"An Error occurred: File is not a SQLite 3 Database"なるメッセージが出て先に進めませんでした。

    逆に質問ですが、無事に開けましたか?

    返信削除
  7. 始めまして。ios5にアップデートするとき、削除したSMSはPCに保存されるのでしょうか?また、削除したメールはバックアップされてしまうのでしょうか?あまり詳しくないものですみませんが教えて頂けると幸いです。宜しくお願いいたします。

    返信削除
  8. 初めまして。コメントありがとうございます。
    私も検証したわけではありませんが、削除したSMSは消去されてしまい、バックアップされないのではないか?と思いますが・・・
    不安ならアップデート前にバックアップしておく方が安全かと思います。
    間違っていたらごめんなさい。

    返信削除
  9. コメントに希望を乗せて質問させていただきます。
    脱獄不要でMMSデータを移行出来るとの事でメカ音痴ながらどうしても新しいiPhoneに今までのMMSを移したいと思い苦悩中です。
    ここに記入のあるsms.dbはSQLite Database Browserで読めます。Mac版はここからダウンロード。

    までは出来たつもりです。csvファイルに書き出せば無事にバックアップ完了です。
    とありますがこの方法が分かりません><

    あと、
    ちなみに元々は
    /var/mobile/Library/SMS/sms.db
    に保存されているので脱獄していれば読み書きは簡単。

    とありますが、やはり脱獄が必要という事でしょうか?

    iPhoneもMacintoshも詳しくないのですがデータを移したい一心で頑張ってます。どうかお力添え頂けますようお願い致します;;

    返信削除
  10. コメントありがとうございます。
    ご希望に添えるか分かりませんが・・・

    まず、iOS4からiOS5への移行でバックアップから復元作業を行えば過去のデータはMMSを含めて復元されると思います。どうしても失いたくないデータがあればまずはこの方法が最も簡単かつ確実だと思います。

    次にこの記事で書いた方法でバックアップしたファイルをiPhoneに書き戻すためにはやはり脱獄は必須だと思います。Androidの一部メーカーとは異なり、Appleはrootを取る方法を公式には与えていません。

    最後に、”脱獄不要でMMSデータを移行出来る”と書いたつもりではなくて、”脱獄不要でバックアップできる”ことを記事にしたつもりなんです。誤解させてしまったら申し訳ありません。現時点で脱獄不要でデータを移行するためにはバックアップからの復元が唯一の方法だと思います。他にも方法はあるのかな?

    あと、SQLite Database Browserからのエクスポートは私の環境では挙動がおかしく、改めて確認することが出来ませんでした。確か書き出すデータベースを選んでメニューからExportを選択すれば良かったような気がします。

    と言うわけです。お力になれたら良いのですが・・・

    返信削除
  11. はじめまして

    2011年10月15日1:00の匿名さんからの2つ目の質問と同じなのですが、送信メールは書かれてある方法で呼び出すことができたのですが、受信メールが見当たりません。バックアップをとりたいのは、受信メールなので、受信メールのデータの場所を教えていただければと思います。
    よろしくお願いします。

    返信削除

コメントを投稿

人気の投稿