またしても、スマホが謎の領域による空き容量不足によりアプリのアップデートも出来なくなったため、正月休みを利用して初期化を行いました。
前回は adb backupを取ったものの、エラーメッセージ無しに失敗しておりリストアができなかったので、今回は
こちらを参考にバックアップ・ファイルの確認してからの初期化で安全なはずでしたが....
まず、バックアップが今回もうまくできません。前回とは異なり SDカードをマウントしたままバックアップして見たのですが、エラーメッセージは表示されないもののやっぱり完全にバックアップが取れずに
# cat backup+-shared.ab | \
(dd bs=24 count=0 skip=1 ; cat) | \
zlib-flate -uncompress | \
tar tvf - 1> list 2> err
# cat err
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now
とエラーが出ます。どうもファイルを吸い上げる際にエラーが出ているようです。しかも何回か試すと、32GBのバックアップファイルを作ることもあれば、6GBのバックアップファイルの場合もあるので、内蔵ストレージが壊れかえていて読み出すとエラーになるという訳でもなさそうでした。
何度か試していて、-sharedオプションを外して
# adb backup -f backup_without-shared.ab -apk -all -system
でやると成功しました。
しかし不思議なことに、出来上がったバックアップファイルを上記方法でリストを取ってみると、
・-sharedを付けなくても、SDカード上のファイルがバックアップされている。(アプリと無関係にコピーした mp3ファイル等が。)
・-sharedを付けた場合は、日本語のファイル名が文字化け。(-shared無しでは、ちゃんと日本語としてリストされる。)
-shared無し
----rwxr-x 1000/1015 178818 2007-06-08 04:19 shared/0/hps11pg2/勉強・資格/気象予報士/天気予報の作り方/Resources/ASAS05062800.jpg
-shared有り
----rwxr-x 1000/1015 178818 2007-06-08 04:19 shared/0/hps11pg2/\345\213\211\345\274\267\343\203\273\350\263\207\346\240\274/\346\260\227\350\261\241\344\272\210\345\240\261\345\243\253/\345\244\251\346\260\227\344\272\210\345\240\261\343\201\256\344\275\234\343\202\212\346\226\271/Resources/ASAS05062800.jpg
でした。
何度も試した訳でも無いし発生している現象も訳がわからないので、 -sharedを外せば毎回正常にバックアップが取れるのかハッキリしないままになってしまいました。
この状態で不安を抱えたまま adb restoreをした訳ですが、案の定うまく行きません。
エラーは出ないものの半分位しかアプリは戻らないし、無効にしてあったアプリが全部有功になったり、機内モードにしてあったのが外れたりと、前回のエラーの出るバックアップファイルでリストアした時より酷い状態でした。(ただ、このリストアの失敗は、adb restoreをする前に私が google playで一つアプリをインストールしたのでそれが影響している可能性はあります。)
初期化前/初期化直後/adb restore後
WEB上では、皆さん何の問題も無く adb backup/resotre使いこなしているようですが、何が悪いんでしょう?スマホが古すぎ?Linuxから adbを使っているのが間違いの元?
いずれにせよ、
エラーメッセージぐらい出してくれよ!!