スマホの機種変更時に面倒なのが、 WhatsApp やLINE、WeChatと言ったプッシュ型のSNSデータ移行。それでも近年はGoogleドライブへの履歴 バックアップ をサポートするSNSも増えてきました。 WhatsApp の場合の バックアップ と 復元 手順をGoogleドライブ経由の他、データファイルを直接移した場合についてまとめました。
バックアップ設定
WhatsAppのバックアップ機能は、「設定」の「チャットバックアップ」内にあります。
端末の内部ストレージへのバックアップの他、Googleアカウントを登録してあれば、そのアカウントのドライブへもバックアップすることができます。そしてバックアップは都度実行の他、定期的に実行するよう、スケジューリングしておくことが出来ます。
Googleドライブ上では、ファイルやフォルダとして見えるのではなく、連携アプリとして登録されていることが分かるのみです。LINEも同じ一覧にいますがこちらは使用量が明示されています。
Googleドライブからの復元
WhatsAppデータをバックアップから復元出来るのは、アプリインストール後の初回起動時に現れる、初期設定ウィザードのみ。
メッセージの復元はウィザード内で完了しますが、画像などメディア系はバックグラウンドで進行します。
ローカルバックアップの構成
Googleドライブへアップロードされる前に、ユーザデータ領域である内部ストレージに生成されるローカルバックアップは、Android端末の以下の見つけやすい場所に保存されています。
/sdcard0/WhatsApp/
上記のように内部ストレージ直下にいない場合、次の場所にいたことも実際にありました。
/sdcard0/Andoird/media/com.whatsapp/WhatsApp/
どちらの場所にあっても、WhatsAppフォルダ以下の構成に違いは無く、次のような構成になっています。
WhatsApp/ ├── .Shared ├── .StickerThumbs ├── .Thumbs ├── .trash ├── Backups ├── chatsettingsbackup.db.crypt1 ├── statusranking.db.crypt1 ├── stickers.db.crypt1 ├── Databases ├── msgstore-2020-10-30.1.db.crypt12 ├── msgstore-2020-10-31.1.db.crypt12 ├── msgstore-2020-11-01.1.db.crypt12 ├── msgstore-2020-11-02.1.db.crypt12 ├── msgstore-2020-11-03.1.db.crypt12 ├── msgstore-2020-11-04.1.db.crypt12 ├── msgstore-2020-11-05.1.db.crypt12 ├── msgstore-2020-11-06.1.db.crypt12 └── msgstore.db.crypt12 └── Media ├── WallPaper ├── WhatsApp Animated Gifs │ ├── Private │ └── Sent ├── WhatsApp Audio │ ├── Private │ └── Sent ├── WhatsApp Documents │ ├── Private │ └── Sent ├── WhatsApp Images │ ├── Private │ └── Sent ├── WhatsApp Profile Photos ├── WhatsApp Stickers ├── WhatsApp Video │ ├── Private │ └── Sent └── WhatsApp Voice Notes
上から順にサブフォルダを追ってみると(隠しフォルダは除く)、まず
Backups
にはアカウントやチャットの設定が保存されているようです。
次の
Databases
がテキストベースのチャット履歴が入ったデータベースで、現行の他に過去数世代分が保持されています。実際にWhatsApp公式FAQにも、この過去のデータベースファイルをリネームして復元する方法が載っていました。
How to restore your chat history – Restore from a Google Drive backup In order to successfully restore a Google Drive backup, you need to use the same phone number and Google account used to create the backup. To restore your backup: Uninstall and reinstall WhatsApp. Open WhatsApp and verify your number. When prompted, tap RESTORE to restore your chats and media from Google Drive. After the restoration process is complete, tap NEXT. WhatsAppヘルプセンター – How to restore your chat history – WhatsApp.com |
最後の
Media
以下がチャット内の画像(Images)、動画(Video)、音声メッセージ(Voice Notes)などが保存されている場所で、このうち音声メッセージはさらに細かいサブフォルダの細分化されています。
ローカルバックアップからの復元
移行先の端末にこの
フォルダごと直接コピーしてしまえば、WhatsAppアプリインストール後の初回起動で認識されるので、Googleドライブ経由よりも速い復元が見込めます。
先ず、Ubuntu 18.04母艦にAndroid端末をUSBケーブルで繋ぎ、adb pushコマンドを使って、日頃rsyncで同期しているバックアップを転送してみます。フォルダを再帰的に転送する方法は、こちらを参考にさせて頂きました(Great Tnx!!)。空のフォルダは転送されないのは仕様です。
$ adb devices List of devices attached AHK0216B09001965 device $ ll drwxrwx--- 9 user user 4096 Jun 18 00:00 WhatsApp/ $ adb push WhatsApp/. /sdcard/WhatsApp adb: warning: skipping empty directory 'WhatsApp/./.StickerThumbs/' adb: warning: skipping empty directory 'WhatsApp/./.Thumbs/' adb: warning: skipping empty directory 'WhatsApp/./.trash/' adb: warning: skipping empty directory 'WhatsApp/./Media/WallPaper/' adb: warning: skipping empty directory 'WhatsApp/./Media/WhatsApp Profile Photos/' adb: warning: skipping empty directory 'WhatsApp/./Media/.Statuses/' WhatsApp/./: 6741 files pushed. 6 files skipped. 11.5 MB/s (1925836455 bytes in 159.332s)
USBケーブルを外してWhatsAppアプリをインストールの後、初期設定ウィザードが内部ストレージに転送したローカルバックアップを見つけるので、これを使い復元。端末内で読み込むだけなので、バックグラウンドで進行するタスクも無く完了します。
WhatsAppのローカルバックアップは内部ストレージに生成されるため、ユーザサイドからrsyncによりNASやPCへ簡単に同期させることができ、バックアップや復元がしやすくなります。
投稿 WhatsAppデータのローカルバックアップを用いたAndroid端末間移行 は Fun Scripting 2.0 に最初に表示されました。