ダミーのAndroidの内部メモリからデータを回復する

現在では、SDカードスロットなしのスマートフォンが増えており、MTP経由でアクセスできるように情報を内部メモリに保存する必要があります。 この接続モードでは、標準的な方法でワイプまたは誤って削除した後に電話データを復元することはできません。

今日、多くのXiaomi Mi2sとWindows 8.1の例を使用して、興味のある、失われたデータを回復する方法をお教えします。

スマートフォン/タブレット/スマートパッドの内部メモリを誤ってフォーマットした場合、動揺しないでください。最も重要なことは、デバイスのメモリに何かを書き込む必要がないため、より多くのデータを回復できることに注意してください。

MTPプロトコルでは、コンピューターは接続されたデバイスをUSBドライブとして認識できず、回復プログラムはそのようなデバイスをスキャンしてデータを保存できないため、内部メモリパーティション全体をシステムイメージとしてコピーする必要があります。

Androidデバイスの準備


ルートおよび有効化されたUSBデバッグが必要になります。

PCの準備


システムパーティションをコピーするには、次のものが必要です。


まず、デバイスとADBのUSBドライバーをインストールします。 その後、PCを再起動することをお勧めします。

Vhdtool

アドレスC:\ cygwin64 \ 000でフォルダーを作成します(名前は関係ありません。ラテンアルファベット以外の文字を使用するだけではいけません)。ここに画像があります。 VHDtool.exeフォルダーにコピーします。

Filezilla

インストール中に、すべての標準インストールに同意します。
インストール後、FileZillaは自動的に起動しますが、 管理者の代わりにプログラムを終了して実行する必要があります。
FileZillaを起動すると、サーバー名が要求されますが、すべてをそのままにしておきます。



次に、[編集]-[設定]に移動し、次の設定を行います。

それらのポートでリッスンします40
タイムアウト設定-デフォルトは120、60、60で、どこにでも0を入力して[OK]をクリックします。
編集-ユーザーに移動します。 ユーザーウィンドウで、新しいユーザーを作成します。 私の場合、これはqwerユーザーです。
[追加]をクリックし、名前を入力し、パスワードを入力して、[OK]をクリックします。

次に、同じ[ユーザー]メニューの左側で、[共有フォルダー]タブを選択します。 そこに行き、ブロックが注がれるフォルダーを追加します。 [追加]をクリックして、フォルダーC:\ cygwin64 \ 000を追加します。 このフォルダへのパスがウィンドウに表示されます。 碑文C:\ cygwin64 \ 000の左側に文字Hがない場合は、[ホームディレクトリとして設定]をクリックします。 次に、行C:\ cygwin64 \ 000を強調表示して、読み取りおよび書き込み権限にチェックマークを付ける必要があります。 OKをクリックします。



Adb

次のファイルが必要になります。


ここからダウンロードできます
または、Android SDKディストリビューションからプルします。

それらをフォルダーC:\ cygwin64 \ binにコピーします
ADBのテスト

フォルダーC:\ cygwin64 \ binからコンソールを起動し、エクスプローラーのアドレスバーにcmdと入力します。


次のコマンドを入力します。

adb devices 


接続されたデバイスのリストの行が空になった後、USBドライバーをインストールしていないか、USBデバッグを有効にしていない場合、接続されたデバイスのリストは空にしないでください。

すべてがうまくいくと、コンソールは次のようになります。



20352f2c-私のXiaomi Mi2s

USBモデムモード


USB経由でデバイスをPCに接続し、USB経由でモデムモードをオンにする必要があります。 私はCyanogenMod 11を使用し、パスに沿ってこのモードがあります:設定>ワイヤレスネットワーク>その他...>モデムモード> USBテザリング
スクリーンショット

次に、コンピューターが受信したIPv4アドレスを確認する必要があります。
コマンドラインでipconfigコマンドを使用します
または
パスに沿って進みます:コントロールパネル\ネットワークとインターネット\ネットワークと共有センター



「ローカルエリア接続」の碑文をクリックしてから、「情報」をクリックして、IPv4アドレスをコピーします。



私の場合、それは192.168.42.79です

重要! USBケーブルを再接続し、モデムモードをオン/オフするたびに、IPv4が変更されます。

どのメモリブロックが必要ですか?


デバイスのすべてのメモリは論理ブロックに分割されます。すべてをダウンロードする必要はありません。消去された情報が含まれているセクションを理解するだけです。

次に、メモリブロックのリストを確認する必要があります。そのために、次のコマンドを1行ずつ入力します。

 adb shell su find /dev/block/platform/ -name 'mmc*' -exec fdisk -l {} \; > /sdcard/list_of_partitions.txt 

ヒント:手動でコマンドを書き換えるのが面倒な場合、または間違えることを恐れている場合は、コピーを使用できますが、通常の方法でコンソールに行を貼り付けることはできないため、コンソールウィンドウを右クリックして、変更>貼り付けを選択する必要があります



その後、list_of_partitions.txtファイルが内部メモリに表示されます。これをPCにコピーして学習する必要があります。
簡単なコマンドを使用して、フォルダ000にコピーできます(コマンドラインの別のウィンドウで実行する必要があります)。
 adb pull /sdcard/list_of_partitions.txt C:/cygwin64/000 


私のファイルの形式は
 Disk /dev/block/platform/msm_sdcc.1/mmcblk0p27: 25.6 GB, 25698483712 bytes 4 heads, 16 sectors/track, 784255 cylinders Units = cylinders of 64 * 512 = 32768 bytes Disk /dev/block/platform/msm_sdcc.1/mmcblk0p27 doesn't contain a valid partition table Disk /dev/block/platform/msm_sdcc.1/mmcblk0p26: 3758 MB, 3758096384 bytes 4 heads, 16 sectors/track, 114688 cylinders Units = cylinders of 64 * 512 = 32768 bytes Disk /dev/block/platform/msm_sdcc.1/mmcblk0p26 doesn't contain a valid partition table Disk /dev/block/platform/msm_sdcc.1/mmcblk0p25: 402 MB, 402653184 bytes 4 heads, 16 sectors/track, 12288 cylinders Units = cylinders of 64 * 512 = 32768 bytes Disk /dev/block/platform/msm_sdcc.1/mmcblk0p25 doesn't contain a valid partition table … 


デバイスの内部メモリは32 GBです。 したがって、最大のセクションを探しています。私の場合は、サイズが25.6 GBのmmcblk0p27で、別の名前が付いているか、p **がまったくありません。 もちろん、最大のセクションが最近あなたの写真、ビデオ、ドキュメントなどが置かれるセクションになることを保証する人はいませんが、90%のケースでこれが必要なメモリの正確なセクションであることがわかります。 それ以外の場合は、すべての画像を順番にコピーして、それぞれを確認する必要があります。

メモリセクションをPCにコピーします。



すでにcmdウィンドウを閉じている場合は、再度実行します。

コマンドを1行ずつ入力します。

 adb shell su mkfifo /cache/myfifo ftpput -v -u qwer -p pass -P 40 192.168.42.79 mmcblk0p27.raw /cache/myfifo 

コードを適切に調整することを忘れないでください!

書かれたものを解読する:

qwer-FileZillaのアカウント名(変更した場合は独自のものがあります)
pass-FileZillaのアカウントからのパスワード(変更された場合、あなたは自分のものを持っています)
40-FileZillaサーバーポート
192.168.42.79-FileZillaサーバーのアドレス(独自のものがあります)
mmcblk0p27.raw-コピーされたメモリブロック(独自のものがあります)



2番目のコマンドプロンプトウィンドウを開き、コマンドを入力します。

 adb shell su dd if=/dev/block/mmcblk0p27 of=/cache/myfifo 

mmcblk0p27をブロック番号に修正することを忘れないでください!

FileZillaウィンドウを調べて、mmcblk0p27.rawをC:\ cygwin64 \ 000フォルダーにダウンロードし始めたので、cygwinウィンドウを閉じてお茶を飲むことができます。



変換および復元


帰ってきた? ファイルはダウンロードされましたか? 素晴らしい。 電話の電源を切り、インターネットに接続します。 Cygwin.batを実行し、次のコマンドを入力します。

 cd C:/cygwin64/000/ VhdTool.exe /convert mmcblk0p27.raw 

mmcblk0p27をブロック番号に修正することを忘れないでください!

変換に数秒かかりました。 出力では、フォルダーC:\ cygwin64 \ 000に同じファイルmmcblk0p27.rawがありますが、少し異なります。 この変換されたファイルは、仮想ディスクとしてマウントできます。たとえば、R-studioを使用して、イメージから直接データリカバリを実行できます。 私はそれをやった。


ヒント:重要なポイントは黄色でマークされています。

まとめ


私の目標は、システムパーティションをAndroidデバイスからPCにコピーする方法を一般的な言語で説明することでした。一部の人は、USBモデムとftpに関連する困難を非難し、おそらくイメージを引き出す方が簡単だと言うかもしれません。 私の答えは次のとおりです。w3bsit3-dns.comおよびxda-developersで説明されている他の方法で試しましたが、うまくいきませんでしたが、ftpでは2回目の試行で判明しました。

品質を損なうことなく、失われたすべての写真を復元することができました。復元することさえ考えていませんでした。 復元中に、昨年8月に携帯電話を購入してカメラをテストしたときに撮った写真が見つかりました。

結論として、データを復元する別の小さなユーティリティ、 DiskDigger undeleteについても言及したいと思います。 それは無料の優れた機能ですが、残念ながら、40%後にエラーで私の心から落ちました。

PS今、私はより頻繁にバックアップを行います...
PPSコメントの視覚的な実験に対するユーザーbakatroubleに感謝し、プロセスの最適化に役立ちます

Source: https://habr.com/ru/post/J232399/


All Articles