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

Search This thread
May 15, 2012
31
4
0
I'm using XP so I cannot mount a VHD using the Windows Disk Management program (it is not an option). I tried mounting the .raw HD file using a 3rd party program, Gizmo Manager, but Recuva cannot seem to scan the disk after mounting the image when choosing that disk drive letter. I am unable to complete steps 11 and on - I cannot Initialize the Disk, do anything with GUID Partition Tables, or do a quick format. Can somebody please help?

Is anyone able to help with this?
 

TheGrudge

Senior Member
Jul 26, 2008
57
5
0
Hi there, I believe i've done every step but when I run the terminal commands it's just running without doing anything (no speed) (check the screenshot).
Can you please help. What I could be doing wrong?
My device is SGS3
Thanks.

View attachment 2090982


P.S. I fixed it, apparently I have copied to cygwin wrong netcat. Now it's compiling with 3MiB/s :).
 
Last edited:

Anakha56

Senior Member
Aug 10, 2008
925
131
63
Durban
Okay so mine is busy making a raw file of my S3 International 32GB partition. Thank you ever so much @Wartickler for this helpful post :). If I could I would donate to you :).

/now to watch the lovely countdown until it is finished :p.

---------- Post added at 11:04 AM ---------- Previous post was at 10:41 AM ----------

Is anyone able to help with this?

http://helpdeskgeek.com/windows-xp-tips/attach-a-vhd-file-in-windows-xp/

That post explains how to attach a vhd in WinXP.
 
Last edited:
May 15, 2012
31
4
0
Last edited:

EzZn0

Senior Member
Sep 21, 2010
65
5
0
Thanks for the tutorial. It really helped me and I was able to restore a part of my internal storage even though it was not the one I was planning on restoring.

The part i want to restore is the internal sdcard and it is called /dev/block/vlod/259:3 according to diskbugger. When I try to restore it I get a
Code:
nc: bind: Address already in use

Is ther anyone who has an solution to my problem?
 

Anakha56

Senior Member
Aug 10, 2008
925
131
63
Durban
Hi Anakha56! Thanks for your reply. However, I have already tried this—going through the process again, it will not attach/mount as the file is a .raw file, not a .vhd, as per this guide. It returns the following message: "Failed to plug in the Virtual Hard Disk (VHD). The specified file is not a valid VHD."

Sorry for the late response, was not watching the forum or my email.

I take it you ran the vhd convert command and found that after it ran your raw file is still a raw file? If so make a backup copy of the file (just so that if this next part screws it up you dont have to redo it) and rename the extension from .raw to .vhd. Saw this tip in a previous post in this thread, once you have done that it should work fine.

As an aside for anyone else, if your partition gets destroyed by a ROM downgrade (which happened to me) you will not be able to recover data when that partition is recreated ;). I am not upset at losing the data because this thread taught me something new which is far more valuable than a few silly pics ;).
 
May 15, 2012
31
4
0
I take it you ran the vhd convert command and found that after it ran your raw file is still a raw file? If so make a backup copy of the file (just so that if this next part screws it up you dont have to redo it) and rename the extension from .raw to .vhd. Saw this tip in a previous post in this thread, once you have done that it should work fine.

Yup. I created a copy of the file and changed the original one from .raw to .vhd. When mounting it by using the cmd command, it says "The Virtual Hard Disk is successfully plugged in as a virtual disk device." - however, after the "Found New Hardware" bubble pops up from the task bar icon in the corner, it changes to "A problem occurred during installation. Your new hardware might not work properly" and I don't see any additional drives when browsing My Computer.

I tried to fix this - under "Microsoft Virtual Server Storage Devices" in Device Manager, the listing had a yellow exclamation point. I right clicked on the entry and chose Update Driver > Install from a list or specific location > Don't search > Disk Drive. The "Microsoft Virtual Server Storage Devices" entry switches from being under "Microsoft Virtual Server Storage Devices" to "Disk Drives," but the yellow exclamation point remains. After restarting (to save changes, as it prompted me to), when I now try to mount it via cmd, I still get nothing - no popups or new drives in My Computer. If, instead, I select "Microsoft Virtual Server Storage Devices" instead of "Disk Drive" on this screen, I get a "There was a problem installing this hardware. The device cannot start. (Code 10)"

After restarting (have done this twice now), and opening device manager after mounting it via Vhdmount in cmd, it shows back up under "Microsoft Virtual Server Storage Devices" - picture here. I have not yet tried choosing "Install the software automatically."

Either way, and after trying all of that, no new drives will display in My Computer.

Any ideas? Thanks for all the help.
 
Last edited:

Anakha56

Senior Member
Aug 10, 2008
925
131
63
Durban
I am now at the end of my knowledge. Without working on it myself I have no idea, sorry. :(

Good luck finding a fix but I think it might be worth your time getting a OS update sometime soon.
 

sklks

Senior Member
Dec 26, 2010
209
18
38
Lisbon
[*]Right-click on the name (e.g. "Disk 1") to the left of the Unallocated space and select Initialize Disk.
[*]Select the GPT (GUID Partition Table) radio button and select the OK button.
[*]Right-click on the Unallocated space and select New Simple Volume...
[*]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.

Hi,

After attach the VHD disk it doesn't shows any unallocated space, I already have two mmcblk0.vhd files and the result is the same.. anyone had the same problem? It appear both VHD disks has Healthy (GPT Protective Partition)
 
May 15, 2012
31
4
0
I am now at the end of my knowledge. Without working on it myself I have no idea, sorry. :(

Good luck finding a fix but I think it might be worth your time getting a OS update sometime soon.

Agreed. I use a Mac, mainly, but my desktop is still on XP. I plan to upgrade to Windows 7 soon. If I keep a copy of the .raw file (possibly to use when I upgrade!), will I be able to pull those lost pictures from it anytime in the future, and go back to taking pictures (thereby overwriting the "deleted" current internal memory space) using my phone?

Thanks for all your help! If anyone has other ideas (drivers not updated...? or something?) feel free to help!
 

Droid_Dustin

Senior Member
Jan 16, 2011
182
93
0
Frankfurt
hey guys,

it seems that I am a noob. Because I tried to unlock the bootloader from my Google N4 w/o saving the data..
So I found this guide to restore the data.
But the mmcblk0p23 block gets copied only at 0 B/s.. The firewall from Windows 8 already has been disabled and I didn't copy and paste the commands. PLEASE HELP!! :(

EDIT:
Now it works with 3 MB/s!! I just had to try it on another PC.

EDIT2:
But when I convert the raw file to vhd nothing happens...
 
Last edited:

blueren

Senior Member
Jan 4, 2011
1,809
461
0
Oh mmmmaan! Thank god I found this thread! i accidentally wiped out all of my internal memory in nex4.. currently creating the raw partition. Just figured out that keeping the phone screen on somehow increases the default transfer rate from an avg of 3.2 Mbps [screen off] to 4.2Mbps [Screen on]. Hmm..
 

MyCanSeeYou

Senior Member
Feb 3, 2012
58
4
0
Coventry
Hi,

After attach the VHD disk it doesn't shows any unallocated space, I already have two mmcblk0.vhd files and the result is the same.. anyone had the same problem? It appear both VHD disks has Healthy (GPT Protective Partition)

I get the same problem with my mmcblk0 file as well, but not with my mmcblk0p29 file (userdata for s4). I need a solution too as my recuva on the blk0p29 didn't find what I wanted
 

adefxda

Senior Member
May 7, 2010
242
86
58
Jambi
also working with my nexus 7

thanks for the tutorials..
also work well with my nexus 7..
 

Attachments

  • zzz.jpg
    zzz.jpg
    76.2 KB · Views: 377
Last edited:

pusaran

Senior Member
Feb 12, 2011
82
0
0
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!

Hi Wartickler,

Do you mind showing me which type of rooting method is non destructive?
my HTC Butterfly is not bootloader unlocked yet and tons of my photo was gone by accident from my internal memory>.<
Thanks :crying:
 

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