Nexus 5 が唐突に故障した.私の現状では,新品交換以外に策がない.どなたか内蔵ストレージのデータの救出方法をご存知の方は是非教えてください~!
では,詳細をば.
故障の状況.
使用中にタップに反応しなくなり,リセットがかかって,黒地に google ロゴが出てきた.その後初期設定シーケンスに突入.嫌な予感しかしないが,初期設定の途中でも 'Unfortunately, Camera has stopped.' やら 'Unfortunately, Galery has stopped.' と警告が出てさらに嫌な感触を煽ってくる.初期設定が済むと,今度はストレージ容量が足りないと警告が出る.32GBモデルでまだまだ余裕があったはず‥と思いながら見てみると,Total space 128MB となっている.メガバイトって!つまり内部ストレージ(フラッシュメモリというかeMMC の 32GB)が認識されていないようだ.一度電源を切ってしばらく置き,その後電源を入れると,また初期設定に突入する.どうやら何も覚えてくれなくなったらしい.ちなみに,日付と時刻も吹っ飛んで,再起動のたびに1970年になっている.
端末の調査.
何とかならないかと思って,PC から usb 接続で adb shell でシェルに入り,少し調べてみた.
ただ,root化はしていない品行方正な端末なので,できることは著しく限られる.
shell@hammerhead:/ $ cat /proc/partitions
cat /proc/partitions
major minor #blocks name
179 0 30535680 mmcblk0
179 1 65536 mmcblk0p1
179 2 1024 mmcblk0p2
179 3 512 mmcblk0p3
179 4 512 mmcblk0p4
179 5 512 mmcblk0p5
179 6 512 mmcblk0p6
179 7 2048 mmcblk0p7
179 8 1024 mmcblk0p8
179 9 512 mmcblk0p9
179 10 512 mmcblk0p10
179 11 512 mmcblk0p11
179 12 3072 mmcblk0p12
179 13 3072 mmcblk0p13
179 14 512 mmcblk0p14
179 15 16384 mmcblk0p15
179 16 16384 mmcblk0p16
179 17 3072 mmcblk0p17
179 18 22528 mmcblk0p18
179 19 22528 mmcblk0p19
179 20 22528 mmcblk0p20
179 21 3072 mmcblk0p21
179 22 512 mmcblk0p22
179 23 512 mmcblk0p23
179 24 512 mmcblk0p24
179 25 1048576 mmcblk0p25
179 26 30720 mmcblk0p26
179 27 716800 mmcblk0p27
179 28 28551146 mmcblk0p28
179 29 5 mmcblk0p29
179 32 4096 mmcblk0rpmb
shell@hammerhead:/ $
という感じ.ということは,eMMC ストレージのパーティションテーブルは読めてる? 1ブロックの大きさはわからないが,ブロックあたり1KBなら約30GBとなって辻褄は合いそうだ.
マウント状況は,
shell@hammerhead:/ $ mount
mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,
data=ordered 0 0
tmpfs /data tmpfs rw,seclabel,nosuid,nodev,noatime,size=131072k,mode=771,uid=100
0,gid=1000 0 0
となって,おなじみの /sdcrad には何もマウントされていない.
df では,
shell@hammerhead:/ $ df
df
Filesystem Size Used Free Blksize
/dev 927.5M 128.0K 927.4M 4096
/sys/fs/cgroup 927.5M 12.0K 927.5M 4096
/mnt/asec 927.5M 0.0K 927.5M 4096
/mnt/obb 927.5M 0.0K 927.5M 4096
/system 1009.3M 704.9M 304.4M 4096
/data 128.0M 123.4M 4.6M 4096
shell@hammerhead:/ $
となって,もしかして system パーティション(mmcblk0p25)は生きているのかもしれない.
この後,mount, e2fsck, cat, dd など試みるも,パーミッションがないので当然撃沈.
root 化すればこれらのコマンドでアクセス可能になると思われるが,そもそも root 化の過程で内部ストレージが初期化されるということで,データを復元したいというのにそれでは意味がない.google の保証が飛ぶのも嫌だ.
ということで,データ救出に関しては詰んだ模様.
次は全部完全にバックアップするように設定しておこう,というのが私の得た教訓であった.
追記:
その後 root 化によるデータ救出を試みるも轟沈.続きの顛末は
「Android: Nexus 5 は記憶を取り戻さなかった」
へどうぞ.
0 件のコメント:
コメントを投稿