[GUIDE] Internal Memory Data Recovery - Yes We Can!

Search This thread

jmboulware

Senior Member
Jan 7, 2012
157
43
Thanks for much for this! I went into my gallery one afternoon and everything was gone .... had no idea how or why.
This worked great and I got 99% back in great shape!

The only thing I'll add is that mounting the virtual drive didn't work on my Windows 8 machine ... had to copy the .RAW file over to a windows 7 machine to get it to mount, but after that it was smooth sailing!

JB

---------- Post added at 03:53 AM ---------- Previous post was at 03:53 AM ----------

Thanks for much for this! I went into my gallery one afternoon and everything was gone .... had no idea how or why.
This worked great and I got 99% back in great shape!

The only thing I'll add is that mounting the virtual drive didn't work on my Windows 8 machine ... had to copy the .RAW file over to a windows 7 machine to get it to mount, but after that it was smooth sailing!

JB
 

Depressed T.Bear

Senior Member
Jun 3, 2013
862
675
Berlin
Thanks for much for this! I went into my gallery one afternoon and everything was gone .... had no idea how or why.
This worked great and I got 99% back in great shape!

The only thing I'll add is that mounting the virtual drive didn't work on my Windows 8 machine ... had to copy the .RAW file over to a windows 7 machine to get it to mount, but after that it was smooth sailing!

JB

---------- Post added at 03:53 AM ---------- Previous post was at 03:53 AM ----------

Thanks for much for this! I went into my gallery one afternoon and everything was gone .... had no idea how or why.
This worked great and I got 99% back in great shape!

The only thing I'll add is that mounting the virtual drive didn't work on my Windows 8 machine ... had to copy the .RAW file over to a windows 7 machine to get it to mount, but after that it was smooth sailing!

JB

Great :) For the future: You can save all your installed apps (inlc. data) and pictures, movies, musik and so on with MyBackupPro.
It's a 30 day trial... but.. *cough*...in cases of emergengy, there's also an xposed module which works like a "timemachine" for selectable apps ;)
 

peacesam

Senior Member
Feb 2, 2011
57
2
This recovery method doesn't work on the BeansTalk 4.4.2.

I tried to grab every block and all of them are 0 file size.

Update: I ended up jumping back on Cm11 m2 since i was experiencing too many issues on Beanstalk. I am able to product a raw file now but the memory block i need is mmcblk0p15. Don't forget to change your bUsybox bin location!
 
Last edited:

LtnKowalski

Member
Sep 25, 2008
6
0
I reverted back to stock rom and in the chaos of events i didnt realize that im resetting and wiping everything. Stock rom installed and after first boot i realized what ive done. I followed the instructions here, everything worked perfectly to the last letter with my Samsung Galaxy S3, except recuva was only able to find the newly installed stock rom files. The internal HD used to be about 80% full and now less than 10% is being used. Any chances that I could still be able to recover atleast some of my lost files?
 

sxm2

Senior Member
Jun 13, 2010
71
8
For those with problems using the nc.exe, this heavily improved version by nmap works very well and won't be detected as a virus (as with some nc.exe variants with -e option):
http://nmap.org/ncat/

You have to use ncat.exe instead of nc.exe in the second terminal though.

Wow, spent many hours trying to get this working, and the quoted post really helped me out.

My problem was the 0 bytes transfer issue. Downloaded ncat.exe, put in /bin, and changed nc to ncat in the second terminal (Not the first).
So for my toro phone (busybox was in xbin):

adb forward tcp:5555 tcp:5555
adb shell
su
/system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox dd if=/dev/block/mmcblk0p12

adb forward tcp:5555 tcp:5555
cd /nexus
ncat 127.0.0.1 5555 | pv -i 0.5 > mmcblk0p12.raw
 

MitsuiMVP

New member
Jan 21, 2014
1
0
Cygwin installed to [c:\cygwin] with pv and util-linux from the repo. Make sure to open Cygwin once to make sure that the /bin folder is created. Also, I made a folder at [c:\cygwin\nexus] to put the exported .RAW file,!


Hi, please help out a noob here.

I tried to setup Cygwin, and it shows me a list of packages to install, I could not find pv and util-linux.

Where can I find them? Thanks
 

funkyblue04

Senior Member
Dec 15, 2010
1,041
181
So how much data would be lost if I unlocked, and reflashed the whole system image? If I unlock, flash the stock image (without wiping the user partiton) would have have a good chance of recovery using this guide?

ATM I have a Nexus 7 2013 that is stuck in a bootloop, I think from a failed update. I manually sideloaded updates to 4.4.2 but that also did not work. Is there anyway to extract data off this thing? I can access stock recovery and fastboot. I would even destroy the tablet if there was a way to take the chip out and copy the stuff to a computer,

The tablet belongs to a family friend who has been using it as a usb device for months and it contains documents, photos and other important data.

Thanks everyone :)
 

funkyblue04

Senior Member
Dec 15, 2010
1,041
181
@TheJuicer

Using Testdisk and/or Photorec I found more convenient to dump the whole device block ( /dev/block/mmcblk0 ), because it gets easier for both tools to properly identify the device partitions thus making recovery more successful.

Thanks! Had nothing but issues with small files or 0 bytes. Dumping the whole think is working. I just hope data can be recovered :D
 

lucasbroderick

New member
Jan 10, 2013
2
0
My goal here is to recover a phone number from August of 2013. I never had them in the contacts, but I had several texts back and forth to this number.

I did everything in the tutorial, it all worked, and now I have a plethora of files in a folder of recovered data. Some of the pictures go back from before August, so this makes me think that there's hope that the data I'm looking for isn't overwritten by now.

My problem now:
I have a bunch of files in here that I can't open, weird extensions, and I'm not really sure what to even look for to find these text messages and get them into a readable format.

Anybody have some insight on this? Thanks.
 

Diablosss

Senior Member
Apr 16, 2006
60
1
Read all please. I try this method on a 20 different phones, s3 s4 htc sony and other models with android internal memory. From all raw restored ONLY some png and watsapp and other small images. From no one phone camera photos and videos not restored. No matter model and dev block. I checked all. So if you want to restore your camera photos and videos - sad to say but this solution will not help you.
 

Wartickler

Senior Member
Nov 4, 2009
170
353
Tallahassee, FL
Sadly, it appears to be somewhat true...

Read all please. I try this method on a 20 different phones, s3 s4 htc sony and other models with android internal memory. From all raw restored ONLY some png and watsapp and other small images. From no one phone camera photos and videos not restored. No matter model and dev block. I checked all. So if you want to restore your camera photos and videos - sad to say but this solution will not help you.

Diablosss may be correct, with respect to how often people report issues with this guide. I know I recovered my stuff and others have as well. It may be down to what strategy the individual phone's firmware uses when it writes blocks of OS.

I may go through the posts at some point to compile a list of the phones that worked and didn't work. Perhaps anyone still following this thread could identify the model they were using this guide with...?
 

peacesam

Senior Member
Feb 2, 2011
57
2
Diablosss may be correct, with respect to how often people report issues with this guide. I know I recovered my stuff and others have as well. It may be down to what strategy the individual phone's firmware uses when it writes blocks of OS.

I may go through the posts at some point to compile a list of the phones that worked and didn't work. Perhaps anyone still following this thread could identify the model they were using this guide with...?

Read all please. I try this method on a 20 different phones, s3 s4 htc sony and other models with android internal memory. From all raw restored ONLY some png and watsapp and other small images. From no one phone camera photos and videos not restored. No matter model and dev block. I checked all. So if you want to restore your camera photos and videos - sad to say but this solution will not help you.

Yep, you are right. I gave up on recovering my images/videos and backup titanium files. This method doesn't help you on recovering from DCIM folder or apps folder. I was able to retrieve it some images using Wondershare software and all you have to do is connect your phone via a usb cable + MTP connection. However, this software does't do a deep scan.
 

tso7

Member
Nov 18, 2013
5
0
Bangalore
Note that this is on a Nexus 5 (hammerhead) 32GB

Formatted /data in TWRP after I had a bootloop and TWRP was not able to wipe the data and cache partitions (old buggy version:rolleyes:)
Did not know it would delete my sdcard as well :(

Anyway trying this to recover it.

I am unable to copy the partition to my PC via NC, I get a 0 byte file

These are the partitions I tried to get back the sdcard:
/dev/block/platform/msm_sdcc.1/mmcblk0p28 (29GB)
/dev/block/platform/msm_sdcc.1/by-name/userdata

Update: Fixed.
Solution: Install NC while installing cygwin :cowboy:

Another owner of 32GB Nexus 5 here and I just want to confirm this fact. Installing both NC and PV during cygwin installation led to a very smooth and successful backup for me.

Also, partition for user data (virtual sdcard) is /dev/block/platform/msm_sdcc.1/mmcblk0p28 on 32GB Nexus 5.
 

duck361

Member
Feb 4, 2014
6
0
In step 15, I dont see initialize disk
please help

The Preamble
Did you delete all your SDCard data? :confused:
Are you pissed because no one told you before you unlocked your bootloader what would happen? :eek:
Did you lose valuable pictures of cats doing wondrously funny things? :laugh:
Well now there's a convenient new way for you to get that data back Buckaroo! :cowboy:

The Problem
Internal Memory doesn't mount as a drive like external memory does. External memory would allow you to use data recovery tools that scan for deleted files and return them to a usable state. These tools work because most operating systems don't go through and set all of those 1's and 0's to just 0's when you delete a file. Usually the operating system will just delete the reference pointer in the index that says that a file exists with such-and-such name and it's located at this position on the hard disk / memory location. There are destructive delete tools out there that will overwrite the spot of a deleted file multiple times to discourage recovery in just this manner. The issue is that data recovery tools need an actual mounted drive in order to dig deep and unearth those funny pictures of cats you so tragically deleted by accident. These newest batches of phones don't have external SDcards which are super easy to mount as drives. Internal memory mounts as MTP/PTP which is not treated as a mounted drive and cannot be scanned by these data recovery tools. But, cry no more cream-puff! :crying:

The Process
My phone is the Samsung Galaxy Nexus (toro) though I imagine this should work for ANY phone with Internal Memory. We will be using a Windows 7 machine to:
  • back up the entire internal memory partition to your computer as a single, massive .RAW file,
  • convert the .RAW file output to a VHD,
  • mount the VHD as a disk in Disk Manager,
  • scan the attached VHD volume for files that have been deleted and recover them,
  • ?
  • profit! :good:

The Requirements
  • A rooted Android phone, (try to root with a non-destructive method as this appears to protect those who must root from wiping the device data a second time),
  • BusyBox installed on your device,
  • Cygwin installed to [c:\cygwin] with pv and util-linux from the repo. Make sure to open Cygwin once to make sure that the /bin folder is created. Also, I made a folder at [c:\cygwin\nexus] to put the exported .RAW file,
  • Netcat (download the ZIP file and extract nc.exe to [c:\cygwin\bin]),
  • ADB (make sure adb.exe is in your path),
  • USB Debugging enabled on your device,
  • VHD tool from the mighty M$. Put the VhdTool.exe file in [c:\cygwin\nexus],
  • Piriform Recuva or your favorite data recovery tool, (it appears Recuva only finds the more common file types like images, videos, etc. Those were the file types in which I was interested. If you are after more exotic file types perhaps you might share the software you used.)
  • A calm sense of peace and serenity that you will get your files back... :fingers-crossed:

The Work
  1. *****Based on the number of people having trouble with this step it is now my recommendation that you choose to recover your entire memory block instead of just the data partition. In my phone's case that is mmcblk0. Please discover if yours is different.***** Identify which block/partition you want to recover. For our purpose here we are seeking to recover the userdata partition: /dev/block/mmcblk0p12
  2. Turn on your phone
  3. Connect the phone in ADB mode
  4. Unlock the screen.
  5. Open a Cygwin terminal and enter (This assumes your BusyBox installation is at [/system/bin/busybox]. It may be at [/system/xbin/busybox]):
    Code:
    adb forward tcp:5555 tcp:5555
    adb shell
    /system/bin/busybox nc -l -p 5555 -e /system/bin/busybox dd if=/dev/block/mmcblk0p12
  6. Open another Cygwin terminal and enter:
    Code:
    adb forward tcp:5555 tcp:5555
    cd /nexus
    nc 127.0.0.1 5555 | pv -i 0.5 > mmcblk0p12.raw
  7. Run around the house a few times. For 32GB internal memory this is going to take 3+ hours. That's a lot of running. When it's done...
  8. We need to convert the .RAW file to a virtual hard drive. VhdTool.exe basically just puts a VHD footer on the end of the .RAW file. Open a Windows command prompt, go to [c:\cygwin\nexus], and type:
    Code:
    VhdTool.exe /convert mmcblk0p12.raw
  9. Now we need to mount the VHD in Windows. Select the Start button-->right-click Computer-->select Manage.
  10. Select Storage-->Disk Management.
  11. In the menu select Action-->Attach VHD.
  12. For Location enter [c:\cygwin\nexus\mmcblk0p12.raw] and select the OK button.
  13. Right-click on the name (e.g. "Disk 1") to the left of the Unallocated space and select Initialize Disk.
  14. Select the GPT (GUID Partition Table) radio button and select the OK button.
  15. Right-click on the Unallocated space and select New Simple Volume...
  16. In the Wizard select Next>, leave the default for the volume size, select Next>, select a drive letter (e.g. K), select Next>, MAKE SURE to select the 'Do not format this volume' radio button, select Next>, select Finish.
  17. A box will pop up asking you to format the drive. You DO NOT want to format the drive at this time.
  18. Right-click on the RAW space and select Format... MAKE SURE to change the File system to FAT32. Set the Allocation unit size dropdown to 'Default.' MAKE SURE that the Perform a quick format checkbox is CHECKED. You do not want to overwrite the entire new drive with all zeroes (0's) and destroy your data. Quick Format means that it will only attempt to destroy the index for the drive by establishing a new index. Without this box checked the Windows operating system will write zeroes (0's) across the entire volume, potentially destroying your data. Select the OK button.
  19. A box will pop up saying that Formatting this volume will erase all data on it. That would be doubly true if you actually didn't check the 'Perform a quick format' checkbox. Double check that you actually did check the box and select the OK button. (Don't worry. This essentially leaves the volume in the exact same state that your phone's internal memory is living in right now: there is data on the drive...you just can't see it. It's coming back, I promise!)
  20. Open the Piriform Recuva application. In the wizard select the 'Next >' button. Select the 'Other' radio button and select Next >. Select the 'In a specific location' radio button and enter: k:\ (assuming K is the drive letter you chose...) Select the Next > button. Select the Enable Deep Scan checkbox. This is the magical setting that finds files that have been deleted...but not really deleted. Select the Start button.
  21. The application may take about an hour to do the 'Deep Scan.' It's time for more laps around the house! Once the application has returned its results you can choose which files to recover using the checkboxes. Select the 'Recover...' button and choose the location to which you wish to output your files.
  22. ?
  23. Profit! :victory:

The Appendix
The following links helped me to create this modern marvel - mad props to scandiun! :

Good luck!
 

Jeshu_fiji

New member
Feb 9, 2014
2
0
hi there,

i am not sure what i am doing wrong. is it because my phone is rooted in some other way :S
i am trying to recover files from a note 2.

heres where i am stuck at. i scanned the the comments but couldnt find what i need to resolve this. HELP please.

ive tried other mmcblk 's but to no avail. any help would be appreciated.
 

Attachments

  • why.JPG
    why.JPG
    64.7 KB · Views: 125
Last edited:

Jeshu_fiji

New member
Feb 9, 2014
2
0
no need to worry about this, ive just read that its impossible to get back after a factory reset. my gf had turned off her fone during an update causing the fone to go haphazard and nonfunctional. i did a factory reset at that time not knowing that internal memory isnt a mass storage on which i could run recuva.

so i found this great write up which will me someday but not today :(

ive lost pictures with my gf of 7 months now....after the 10th month we go back to our countries.

well i have a month left so i guess ill take as many pictures i can. :D


great write up and great community.:good:
 

wetman

New member
Feb 10, 2014
1
0
Samsung s3 mini couldn't recovered data

Hi,

i have the same problem. Do you have any solution?



Dear Sir, I accidentally deleted camera pics from phone (Samsung Galaxys3 Mini gt-18190n), followed all steps for data recovery but still not getting camera pictures , see tons of junk pictures being retrieved but not a single from camera. I retrieved from mmcblk0 and mmcblk0p25 blocks. Any suggestions where can I trace them , I have extracted an searched in all block under dev/block


---------- Post added at 09:47 PM ---------- Previous post was at 09:14 PM ----------

Hi,
i have the same problem. Do you have any solutions?

I've now got a 14,6GB big dump of the whole memory, but I don't find the pictures I wanted to restore; I guess they already got overwritten.
 

OMGitsShan

Member
Nov 25, 2011
48
8
Seoul
I have a Galaxy Note 3 where I lost all the pictures and videos from the internal memory. I tried this method and from what I gather around the net, userdata: /dev/block/mmcblk0p26 is where the Note 3 stores the items.

Well after I started the 2nd terminal window (everything fine up to that point), it created the RAW file - but it did it in like a second and the mmcblk0p26.raw it extracted was 0KB in size. Did I do something wrong or is my userdata corrupt and the 0KB accurate?
 

Squatrack Curler

Senior Member
Oct 14, 2013
131
19
I have a Nexus 4 running kitkat.
I deleted a folder from the gallery and I am trying to recover it. My phone is unrooted, so obviously I need to root it first.

If I root the phone now, I will lose my data. If I do a backup before I root it, and then restore it after its rooted, will I have any chance of recovering the lost pictures?
 

MovEaxEcx

New member
Feb 14, 2014
3
6
RAW file and storage manager

Hi,

First off, thanks for detailed and scientific approach to describing restore method, I really enjoyed reading and using it. :fingers-crossed:

My phone is Samsung Galaxy S4 mini, model 9515, OS 4.2.2.
Internal memory 8Gb, external SDCard 2Gb.
I have installed everything needed to use this method and everything works until this step:

[*]Now we need to mount the VHD in Windows. Select the Start button-->right-click Computer-->select Manage.
[*]Select Storage-->Disk Management.
[*]In the menu select Action-->Attach VHD.
[*]For Location enter [c:\cygwin\nexus\mmcblk0p12.raw] and select the OK button.

When I select RAW file (converted with VHD tool) in Storage Manager I get following error message box:

"A virtual disk support provider for the specified file was not found."

Here is list of disk partitions on android phone generated by command:

Code:
su
find /dev/block/platform/ -name 'mmc*' -exec fdisk -l {} \;

Code:
Disk /dev/block/platform/msm_sdcc.1/mmcblk0p24: 5821 MB, 5821677056 bytes
4 heads, 16 sectors/track, 177663 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p24 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p23: 37 MB, 37748736 bytes
4 heads, 16 sectors/track, 1152 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p23 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p22: 209 MB, 209715200 bytes
4 heads, 16 sectors/track, 6400 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p22 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p21: 1572 MB, 1572864000 bytes
4 heads, 16 sectors/track, 48000 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p21 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p20: 12 MB, 12582912 bytes
4 heads, 16 sectors/track, 384 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p20 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p19: 8 MB, 8388608 bytes
4 heads, 16 sectors/track, 256 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p19 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p18: 0 MB, 8192 bytes
4 heads, 16 sectors/track, 0 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p18 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p17: 3 MB, 3145728 bytes
4 heads, 16 sectors/track, 96 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p17 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p16: 7 MB, 7331840 bytes
4 heads, 16 sectors/track, 223 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p16 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p15: 10 MB, 10485760 bytes
4 heads, 16 sectors/track, 320 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p15 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p14: 10 MB, 10485760 bytes
4 heads, 16 sectors/track, 320 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p14 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p13: 10 MB, 10485760 bytes
4 heads, 16 sectors/track, 320 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p13 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p12: 3 MB, 3145728 bytes
4 heads, 16 sectors/track, 96 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p12 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p11: 3 MB, 3145728 bytes
4 heads, 16 sectors/track, 96 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p11 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p10: 14 MB, 14286848 bytes
4 heads, 16 sectors/track, 436 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p10 doesn't contain a valid partition
 table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p9: 8 MB, 8388608 bytes
4 heads, 16 sectors/track, 256 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p9 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p8: 13 MB, 13107200 bytes
4 heads, 16 sectors/track, 400 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p8 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p7: 0 MB, 524288 bytes
4 heads, 16 sectors/track, 16 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p7 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p6: 0 MB, 524288 bytes
4 heads, 16 sectors/track, 16 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p6 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p5: 2 MB, 2097152 bytes
4 heads, 16 sectors/track, 64 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p5 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p4: 0 MB, 524288 bytes
4 heads, 16 sectors/track, 16 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p4 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p3: 0 MB, 262144 bytes
4 heads, 16 sectors/track, 8 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p3 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p2: 0 MB, 131072 bytes
4 heads, 16 sectors/track, 4 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p2 doesn't contain a valid partition
table

Disk /dev/block/platform/msm_sdcc.1/mmcblk0p1: 62 MB, 62914560 bytes
4 heads, 16 sectors/track, 1920 cylinders
Units = cylinders of 64 * 512 = 32768 bytes

                                    Device Boot      Start         End      Bloc
ks  Id System
/dev/block/platform/msm_sdcc.1/mmcblk0p1p1   ?    12158374    29994462   5707548
15+ 72 Unknown
Partition 1 does not end on cylinder boundary
/dev/block/platform/msm_sdcc.1/mmcblk0p1p2   ?     2635774    32886216   9680141
20  65 Unknown
Partition 2 does not end on cylinder boundary
/dev/block/platform/msm_sdcc.1/mmcblk0p1p3   ?    29216898    59467339   9680140
96  79 Unknown
Partition 3 does not end on cylinder boundary
/dev/block/platform/msm_sdcc.1/mmcblk0p1p4   ?           1    56831664  18186132
48   d Unknown
Partition 4 does not end on cylinder boundary

Partition table entries are not in disk order

Disk /dev/block/platform/msm_sdcc.1/mmcblk0: 7818 MB, 7818182656 bytes
1 heads, 16 sectors/track, 954368 cylinders
Units = cylinders of 16 * 512 = 8192 bytes

                                  Device Boot      Start         End      Blocks
  Id System
/dev/block/platform/msm_sdcc.1/mmcblk0p1               1      954368     7634943
+ ee EFI GPT
Partition 1 does not end on cylinder boundary
[email protected]:/system # find /dev/block/platform/ -name 'mmc*' -exec fdisk -l {}
 \;

RAW file could not be added as disk in storage manager for two phone files which I have backuped, mmcblk0 (8Gb) and mmcblk0p12 (small one just 3Mb).


My phone is the Samsung Galaxy Nexus (toro) though I imagine this should work for ANY phone with Internal Memory. We will be using a Windows 7 machine to:

Maybe any problem because I use Windows 8.1? (but I did not noticed any problem using cygwin, adb or any other of the tools...)

Best Regards, MovEaxEcx
 

Top Liked Posts

  • There are no posts matching your filters.
  • 306
    This method does not seem to work on newer phones that apply TRIM or some other type of partition clearing implementation. If anyone has recovered their data on a device newer than Android 4.3 please pm me and let me know.

    The Preamble
    Did you delete all your SDCard data? :confused:
    Are you pissed because no one told you before you unlocked your bootloader what would happen? :eek:
    Did you lose valuable pictures of cats doing wondrously funny things? :laugh:
    Well now there's a convenient new way for you to get that data back Buckaroo! :cowboy:

    The Problem
    Internal Memory doesn't mount as a drive like external memory does. External memory would allow you to use data recovery tools that scan for deleted files and return them to a usable state. These tools work because most operating systems don't go through and set all of those 1's and 0's to just 0's when you delete a file. Usually the operating system will just delete the reference pointer in the index that says that a file exists with such-and-such name and it's located at this position on the hard disk / memory location. There are destructive delete tools out there that will overwrite the spot of a deleted file multiple times to discourage recovery in just this manner. The issue is that data recovery tools need an actual mounted drive in order to dig deep and unearth those funny pictures of cats you so tragically deleted by accident. These newest batches of phones don't have external SDcards which are super easy to mount as drives. Internal memory mounts as MTP/PTP which is not treated as a mounted drive and cannot be scanned by these data recovery tools. But, cry no more cream-puff! :crying:

    The Process
    My phone is the Samsung Galaxy Nexus (toro) though I imagine this should work for ANY phone with Internal Memory. We will be using a Windows 7 machine to:
    • back up the entire internal memory partition to your computer as a single, massive .RAW file,
    • convert the .RAW file output to a VHD,
    • mount the VHD as a disk in Disk Manager,
    • scan the attached VHD volume for files that have been deleted and recover them,
    • ?
    • profit! :good:

    The Requirements
    • A rooted Android phone, (try to root with a non-destructive method as this appears to protect those who must root from wiping the device data a second time),
    • BusyBox installed on your device,
    • Cygwin installed to [c:\cygwin] with pv and util-linux from the repo. Make sure to open Cygwin once to make sure that the /bin folder is created. Also, I made a folder at [c:\cygwin\nexus] to put the exported .RAW file,
    • Netcat (download the ZIP file and extract nc.exe to [c:\cygwin\bin]),
    • ADB (make sure adb.exe is in your path),
    • USB Debugging enabled on your device,
    • VHD tool from the mighty M$. Put the VhdTool.exe file in [c:\cygwin\nexus],
    • Piriform Recuva or your favorite data recovery tool, (it appears Recuva only finds the more common file types like images, videos, etc. Those were the file types in which I was interested. If you are after more exotic file types perhaps you might share the software you used.)
    • A calm sense of peace and serenity that you will get your files back... :fingers-crossed:

    The Work
    1. *****Based on the number of people having trouble with this step it is now my recommendation that you choose to recover your entire memory block instead of just the data partition. In my phone's case that is mmcblk0. Please discover if yours is different.***** Identify which block/partition you want to recover. For our purpose here we are seeking to recover the userdata partition: /dev/block/mmcblk0p12
    2. Turn on your phone
    3. Connect the phone in ADB mode
    4. Unlock the screen.
    5. Open a Cygwin terminal and enter (This assumes your BusyBox installation is at [/system/bin/busybox]. It may be at [/system/xbin/busybox]):
      Code:
      adb forward tcp:5555 tcp:5555
      adb shell
      /system/bin/busybox nc -l -p 5555 -e /system/bin/busybox dd if=/dev/block/mmcblk0p12
    6. Open another Cygwin terminal and enter:
      Code:
      adb forward tcp:5555 tcp:5555
      cd /nexus
      nc 127.0.0.1 5555 | pv -i 0.5 > mmcblk0p12.raw
    7. Run around the house a few times. For 32GB internal memory this is going to take 3+ hours. That's a lot of running. When it's done...
    8. We need to convert the .RAW file to a virtual hard drive. VhdTool.exe basically just puts a VHD footer on the end of the .RAW file. Open a Windows command prompt, go to [c:\cygwin\nexus], and type:
      Code:
      VhdTool.exe /convert mmcblk0p12.raw
    9. Now we need to mount the VHD in Windows. Select the Start button-->right-click Computer-->select Manage.
    10. Select Storage-->Disk Management.
    11. In the menu select Action-->Attach VHD.
    12. For Location enter [c:\cygwin\nexus\mmcblk0p12.raw] and select the OK button.
    13. Right-click on the name (e.g. "Disk 1") to the left of the Unallocated space and select Initialize Disk.
    14. Select the GPT (GUID Partition Table) radio button and select the OK button.
    15. Right-click on the Unallocated space and select New Simple Volume...
    16. In the Wizard select Next>, leave the default for the volume size, select Next>, select a drive letter (e.g. K), select Next>, MAKE SURE to select the 'Do not format this volume' radio button, select Next>, select Finish.
    17. A box will pop up asking you to format the drive. You DO NOT want to format the drive at this time.
    18. Right-click on the RAW space and select Format... MAKE SURE to change the File system to FAT32. Set the Allocation unit size dropdown to 'Default.' MAKE SURE that the Perform a quick format checkbox is CHECKED. You do not want to overwrite the entire new drive with all zeroes (0's) and destroy your data. Quick Format means that it will only attempt to destroy the index for the drive by establishing a new index. Without this box checked the Windows operating system will write zeroes (0's) across the entire volume, potentially destroying your data. Select the OK button.
    19. A box will pop up saying that Formatting this volume will erase all data on it. That would be doubly true if you actually didn't check the 'Perform a quick format' checkbox. Double check that you actually did check the box and select the OK button. (Don't worry. This essentially leaves the volume in the exact same state that your phone's internal memory is living in right now: there is data on the drive...you just can't see it. It's coming back, I promise!)
    20. Open the Piriform Recuva application. In the wizard select the 'Next >' button. Select the 'Other' radio button and select Next >. Select the 'In a specific location' radio button and enter: k:\ (assuming K is the drive letter you chose...) Select the Next > button. Select the Enable Deep Scan checkbox. This is the magical setting that finds files that have been deleted...but not really deleted. Select the Start button.
    21. The application may take about an hour to do the 'Deep Scan.' It's time for more laps around the house! Once the application has returned its results you can choose which files to recover using the checkboxes. Select the 'Recover...' button and choose the location to which you wish to output your files.
    22. ?
    23. Profit! :victory:

    The Appendix
    The following links helped me to create this modern marvel - mad props to scandiun! :

    Good luck!
    31
    I forgot to mention, but run commands inside android as superuser or may fail (just after adb shell):

    Code:
    adb forward tcp:5555 tcp:5555
    adb shell
    [B]su[/B]
    /system/bin/busybox nc -l -p 5555 -e /system/bin/busybox dd if=/dev/block/mmcblk0p12

    And greetings for the guide, I didn't know of VHD Tool, congratulations!.
    22
    VHD tool download

    For people who are unable to get hands on VHD tool,

    Exe: https://www.mediafire.com/?f96bmsvjz4qdvbu

    Same thing in zip: https://www.mediafire.com/?f96bmsvjz4qdvbu

    Regards
    15
    Success! Thanks to everybody! :)

    After reading some posts I want to resume in one reply users contribution like advices or notes including my own contribution about "0 byte issue", "cygwin 64 bits vs 32 bits" and other issues of this topic.

    1) Remember that could be important DO NOT use the phone neither Internet neither app which could WRITE at inner memory. The less use, the better.

    2) Remember the possibility to download directly the APK playstore applications from your computer as busybox using an APK downloader instead of downloading directly from your device to prevent write on the inner memory.

    Therefore transfer the APK using USB cable to the external SD card to prevent write data to the inner memory.

    3) Remember that you could have busybox installed in bin, xbin or other folder applying these commands following the steps

    4) Check if ADB shell and busybox have "allow access" in the SuperSU at your phone
    5) Check if the phone is screen blocked with PIN. You need to unblocked it to allow connection between computer and your device
    6) Remember to ACCEPT the RSA fingerprint appear as a popup window on your device when you init the connection using ADB. If this does not appears try to move between USB modes as UTP and PTP till some event trigger it.
    7) It seems NO communication using nc command on cygwin64. Use ncat.exe instead.

    NOTE about "Cygwin 32 bit, instead of the 64 bit" issue: it is not mandatory to install cygwin (32 bits). Using ncat.exe (32 bits) instead of nc at cygwin 64 bits goes on.

    How to install ncat.exe into cygwin64:

    a) Download nmap-6.46-win32.zip from nmap website. Nmap contains ncat.exe application for Windows
    b) Open and extract ZIP file into a temp folder
    c) Copy ncat.exe, libeay32.dll and ssleay32.dll to the C:\cygwin64\bin folder (Assumed you installed cygwin in that path)
    d) Restart cygwin64 terminal to have the changes on.

    Then, change nc to ncat in this step:

    $nc 127.0.0.1 5555 | pv -i 0.5 > mmcblk0p12.raw
    $ncat 127.0.0.1 5555 | pv -i 0.5 > mmcblk0p12.raw

    8) It is not necessary to log as root inside cygwin. Only run cygwin as Windows Administrator.
    9) Remember to have ADB access at PATH environment var to allow cygwin execute Windows ADB without issues
    10) Remember to use su and absolute paths at first shell.
    $adb shell su /system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox dd if=/dev/block/mmcblk0p12

    if it shows the error "can't open permission denied" this means that the device is blocked. See steps 4), 5) and 6)

    11) You will obtain something like that after dump all data from inner memory to the raw file. It is necessary to complete with a non error process:
    ##### gywin first shell ###############

    [email protected]
    $ adb shell su /system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox dd if=/dev/block/mmcblk0p12
    24182784+0 records in
    24182784+0 records out

    12381585408 bytes (11.5GB) copied, 2836.886444 seconds, 4.2MB/s
    ###############################

    ##### gywin second shell ############

    $ ncat 127.0.0.1 5555 | pv -i 0.5 > mmcblk0p12.raw
    close: No error [4,21MiB/s] [ <=> ]
    11,5GiB 0:47:17 [4,16MiB/s] [ <=>

    ###############################

    12) Remember to rename mmcblk0p12.raw to mmcblk0p12.vhd AFTER applying vhdtool /convert. Better for recognize VHD files on Windows Disk Management.
    13) AFTER Initialize Disk it is not mandatory create any volume neither quick format the disk although for piriform recuva could be necessary. However some other software as PhotoRec or Diskinternals Partition Recovery are able to READ the Initialized disk and unallocated space to recover files directly. The less manipulation on the VHD, the better.

    14) Remember that the recover utilities have file type defined. But, how about if you want to recover a special file type? In PhotoRec you can define custom file extension to be recovered. More info at cgsecurity.org.

    15) Keep calm and enjoy the process!

    _______________________
    #Computer
    Computer OS Windows 7 64 bits
    CPU Intel Core 2 Duo [email protected]

    #Device
    Model GT-I9300
    Android 4.3
    Baseband I9300XXUGNA8
    Kernel 3.0.31-2429075
    [email protected] #1
    Thu Jan 16 23:47:54 KST 2014
    Build JSS15J.I9300XXUGNA5

    Rooted CF-Auto-Root-m0-m0xx-gti9300.zip
    SuperSU 1.93
    Busybox 1.22.1
    13
    alright. I think I found the solution for the 0 Byte issue.
    I tried everything now and it finally worked.
    The culprit for me was the whole 64 bit thing. Just go 32bit. (Only thing that is 64 bit on my setup is JDK 8 right now.)

    I also want to note that I am on Windows 8 Pro (64bit)

    I quickly want to summarize the important steps where a lot of people seem to make mistakes or oversee something:

    1) get Cygwin 32 bit and NOT 64 bit
    http://cygwin.com/install.html ->> setup x86.exe

    Install it. when Installing click next until you get to the packages window. See screenshot for that . Scroll down to Utils
    add the packages pv and util-linux (by clicking on skip and checking both boxes)
    then complete your installation.

    you should now have a bin folder now.

    2) go grab the adb (adt bundle) from google.
    unzip it and copy the whole content from \adt-bundle-windows-x86_64-20140321\sdk\platform-tools
    to your C:\cygwin\bin folder

    3) grab netcat zip from http://www.daemon.de/Netcat
    and follow their instructions. its only the nc file (nc.exe to be precise) that you want to copy to your cygwin\bin folder

    thats basically it. these are the most important steps where you could have made mistakes.
    for me personally the 64 bit was the only culprit. Everything works fine with the 32 bit cygwin for me. but the 64 bit one still says 0 Bytes.. so scr*w it :)

    also if you want to know your partition, you might have different values like I do. mine was
    Code:
    su
    ls -l/dev/block/platform/dw_mmc/by-name/

    to get your own value type

    Code:
    su
    cd /dev/block/platform/
    ls
    it should output a folder name . the value that you are looking for .

    Code:
    ls -l/dev/block/platform/(ENTER_THE_VALUE_THAT_WAS_OUTPUTTED_BY_THE_LS_CMD_BEFORE)/by-name/

    And that should show you which names are assigned to which patitions (system, user ,data etc)


    And last but not least. I am just an average guy with few skills but I try to punch myself through stuff by learning and trying to do my best.
    I am not trying to brag or convince anybody and I know that there are nerds who might want to bash me. I dont care. I had the 0 byte problem myself and read through the forums and the problem was never really solved.
    Now that I solved it for myself I could ve left without sharing my success in solving this problem (for my case at least but I hope its a general one)
    But I took my time to share it with the guys in need.

    I hope it will help you and many of you have precious data that needs to be restored. I would be happy if I can contribute something to save your pics from family etc and other cases that were mentioned a few times in this thread.

    Also Thanks to the Topic Starter , but I dont recommend the recovery software that he recommend. I'd go for testdisk / photorec personally.
    There was another software that was recommended somewhere in this thread . you might want to test that one maybe if testdisk is too hard for you.

    one last request: I think my post is going to be long. so PLEASE dont quote all of it if you answer :D
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone