I had recently downloaded an .iso file in Ubuntu. I decided to burn it in Windows as I am well acquainted (I am using an evaluation copy of Windows 8). So I copied it over to one of the NTFS partitions (D:\ being the directory under Windows). But when I booted into Windows, I could not find the specified .iso file. Booting back into Ubuntu, I mounted the NTFS partition, but alas! The file was gone from there too!
It was a fairly large .iso file and I do not want to download it all over again. Please help me out.

You might consider the possibility that you didn't copy it where you think you did. You could try searching for it elsewhere (find /home/<user> -name "*.iso" or, mount everything first and then find /media/ /mnt/ -name "*.iso", or find / -name "*.iso").
–
user55822Oct 19 '12 at 8:40

2 Answers
2

If you hibernate windows (or purpose or because of power-saving), then use ubuntu to store files on the NTFS partition, and then boot up windows, Windows thinks the disk was corrupted while it was in hibernate and "fixes" anything different. After that loging back into ubuntu just confirms that the files have in-fact been deleted.

Edit: I was looking through the widows site to try and find if they detailed the hibernate process, but this sounds interesting http://msdn.microsoft.com/en-us/library/dd143253(v=winembedded.5).aspx , It seems at best the write caching from the harddrive is being saved to memory, then being written after bringing the drive back up, this may mean that the files can't be recovered, because it's not "deleting" as in removing the first letter of the file so the system does not see it, but actually overwriting large areas of data that have been cached. Needs to be looked into more.

Sometimes this is because Linux uses the characters in filenames which are invalid in Windows. For example you can save a file with a question mark (?) in its name in Linux (even in an NTFS partition). However, you cannot open it in Windows, and if you run a chkdsk, Windows will delete the file, and puts it in a folder named Found.nnn in the root of the drive with a different name which may become really tricky to find.