バックアップを作成しようとしています(私の携帯電話の内蔵メモリカードのパーティションの直接ddイメージを私のPCに作成しています。Linuxを使用していて、私の携帯電話はNexus 4です。
ここで別のより良い答え:
要件:adbは既にインストールされている必要があります。
Linux PCで、boot.imgが配置されているフォルダーに次のように入力します。
$ fastboot boot boot.img
Mmcblk0パーティションタイプのイメージをコピーするには:
$ adb pull /dev/block/mmcblk0 mmcblk0.img
編集: 本郷の答え は、ステップが少なくなっています。
fastboot flash recovery twrp.img
_)を使用してTWRPをフラッシュした場合は、_fastboot reboot-bootloader
_を試してから、Recovery
を選択できます。data
パーティションがマウントされていることを確認してください。 system
パーティションがマウントされていることを確認してください。そこにある実行可能ファイルがいくつか必要になります。adb
adb
まだインストールしていない場合。 USBケーブルで電話をコンピュータに接続します。 _adb devices
_と入力します。デバイスがリストされている場合は、接続されています。adb forward tcp:33333 tcp:33333
_adb Shell mount
_/dev/block/dm-0
_のように見える場合、それは論理ボリューム(LVM)、これはおそらくそれをバックアップする正しい方法ではありません]adb Shell
_dd if=/dev/block/dm-0 bs=64k | gzip | nc -l -p 33333
_ [.____をお試しください。]/dev/block/dm-0
_は、前にマウントコマンドで見つけたデバイスと一緒です。33333
_を上記で選択した電話ポートに置き換えます/system/bin/toybox
_または_/system/bin/busybox
_を付加してみてください。if=
_)からコピーし、64kのブロックサイズを使用して(_bs=64k
_-任意を指定するか、この引数を完全に省略できますが、値が小さいとプロセスが遅くなる可能性があります。64kより大きい値は、通常、プロセスを高速化しません)、これをstdout
にダンプします。これは、gzipにパイプされて圧縮され、次に、ポートで(_-l
_)をリッスンしているnetcatにパイプされます。 33333(_-p 33333
_)。nc localhost 33333 | pv -i 0.5 --size 54g > dm-0.raw.gz
_ を実行します33333
_を上記で選択したコンピューターポートに置き換えますdm-0.raw.gz
_を任意のファイル名に置き換えます54g
_をパーティションのサイズに置き換えます(以下を参照)33333
_に接続し、stdout
にダンプし、pv
にパイプして、転送の進捗状況を0.5秒ごとに更新します(_-i 0.5
_)推定サイズが54ギグ(_--size 54g
_-この引数は省略できますが、転送の進行状況が正確であることが必要です)、次に_dm-0.raw.gz
_という名前のファイルにAndroid-platform-tools
またはAndroid-sdk
をコンピュータにインストールします。
ダウンロード [〜#〜] twrp [〜#〜] 。
音量を下げるボタンと音量を上げるボタンを押したまま携帯電話の電源を入れて、ブートローダー画面を起動します。スマートフォンがパソコンのUSBポートに接続されていることを確認します。
fastboot boot twrp-3.1.0.0.img
を実行してTWRPを起動します。 (この方法でリカバリパーティションをフラッシュする必要はありません。)
TWRPで、[詳細]、[ターミナル]の順に選択して、シェルを開きます。 mount
と入力し、[ENTER]を押してパーティションを表示します。 /data
マウントと、場合によっては/sdcard
マウントを探しています。
/data
パーティションが/dev/mmcblk0p28
にマップされているとしましょう。コンピュータでadb pull /dev/block/mmcblk0p28 data.img
を実行するだけで、パーティションがコピーされます。格納されているファイルの数に関係なく、パーティション全体をコピーしているので、このプロセスにはしばらく時間がかかると考えてください。
要件:adbは既にインストールされている必要があります。
Linux PCで、boot.imgが配置されているフォルダーに次のように入力します。
$ fastboot boot boot.img
Mmcblk0p23パーティションタイプのイメージを作成するには:
$ adb Shell 'stty raw && dd if=/dev/block/mmcblk0p23' > ~/userdata.img
役立つリンク:
関心のあるパーティションを特定する方法: http://forum.xda-developers.com/showthread.php?t=2450045
Stty rawを使用しない場合、LFはCRLFに翻訳されます:Android.stackexchange.com/questions/69434/is-it-possible-to-cat-a-file-to-an -Android-phone-and-dd-to-dev-xxx-on-the-fly-w
電話をルート化して安全でないboot.imgを使用する方法:www.addictivetips.com/Android/root-google-nexus-4-install-clockworkmod-recovery/
ADBシェルを介したバイナリデータの転送(stty rawの使用方法):stackoverflow.com/questions/11689511/transferring-binary-data-over-adb-Shell-ie-fast-file-transfer-using-tar