VMware Communities
jalexm
Contributor
Contributor

I will NEVER use a virtual machine again...

Hello.

This is a warning to all users.

Few days ago my VM crashed (I have posted a message here Re: VM crashed! Desperately trying to recover files!).

I lost ALL of my VM contents after some kind of writing error. There was no accidental disconnection, no power failure, no HD damage.

Since then I cannot run/access the VM anymore and AFAIK there's no recovery tool available.

This would not happen with a physical disk, unless I got an electronic/mechanical failure.

If there was a writing problem in a physical disk I would lose some files, not the ENTIRE disk.

Also, sometimes it's possible to install the problematic HD as a secondary disk and read the information using the primary disk or a bootable CD/DVD, etc.

This is not possible with VMs (AFAIK).

When you use a physical hard disk, the only threat to lose ALL your data is an electronic/mechanical failure.

But a VM is just a bunch of files, so you have that mentioned threat MORE the threat of writing errors by operating system.

Please, note that this is not a problem of VMPlayer. It's a problem related to all VM software available.

Virtual machines is a fragile and vulnerable technology. They are good only for small tasks, to test a new software, to test your own software if you are a developer, etc.

But NEVER use it as your main system. NEVER keep important data saved on it for a long time.

DON'T TRUST IT! Unsless you want to end up with a large file in your HD full of important data but totally useless.

This is my warning so that none of you lose ALL you data as happened to me.

Thanks.

0 Kudos
22 Replies
dariusd
VMware Employee
VMware Employee

Hi again jalexm,

It's unfortunate that you feel that way.

Backups are an essential part of any computer user's routine.  All your files are at risk from electronic/mechanical failures, firmware programming defects, power spikes/surges/brownouts, viruses, malware, defective system software (operating system, drivers for your hardware and peripherals, disk tools, even antivirus software) or even defective backup software!  Any of those can cause catastrophic data loss under the wrong conditions.

I've re-read the logs you posted in the other thread and realized that your physical hard disk is most likely failing or encountering trouble.  It is possible that a critical part of the virtual machine's hard disk is stored on a marginal or failing part of the disk, since VMware Player has requested 64 kilobytes of data from the hard disk, and it has taken the operating system four seconds to determine that it was unable to fulfill the request.  A delay like that is highly suggestive of a failing disk.

With VMware Player closed, try copying the virtual machine's folder ("E:\Virtual Machines\Win7 (E)\") off to a separate hard disk.  You should probably run a full surface scan of the disk too.

Cheers,

--

Darius

0 Kudos
jalexm
Contributor
Contributor

Hello.

You are right about backups. The problem is the size of my VM: 300Gb.

I can't do backups frequently. I have one but it's not new enough.

You are right about all those possible failures that threat our data everyday. But most of these threats don't destroy ALL of our data.

Sometimes we can restore at least some of our data. My disappointment with VMs is because we can't do that (AFAIK). ALL data is gone.

Also, I'm not putting the blame on VMPlayer. The problem is not VMPlayer, but VMs technology: it depends on large files and constant reading/writings to disk.

If a fail happens then ALL your data is threatened, not only a part of them.

I have tried to copy VM files to another hard disk, but I get a "Invalid MS-DOS function" error message.

Of course, the vmdk file is corrupt. I did not run a surface scan yet, since I think it could create more problems.

Do you know any tools that could read "inside" the VM and extract some data?

Thanks.

0 Kudos
dariusd
VMware Employee
VMware Employee

Ah, interesting.  If you are getting "Invalid MS-DOS function" while copying the VM folder from outside VMware Player, then we're just a victim of some sort of problem with your host: Either the disk is corrupt or defective.  That's a really weird error message to get, though, but it's exactly what I was seeing in your logs when VMware Player tried to read the same disk.

You really need to figure out what's wrong with your E: drive before you write anything further to it.

If you launch VMware Player but leave the VM powered off, go into Virtual Machine > Virtual Machine Settings, choose the Hard Disk in the hardware list, then choose Mount Disk under Disk Utilities, and see if you can mount the disk on the host that way.  (Disclaimer: I don't have a handy installation of Player on Windows, so there's a chance it might not be there in your version.)  That might not help if the defective part of the host disk backing some critical part of the guest's disk... but it may allow you to recover some or all of your guest data onto another disk.

Otherwise, you can attach a virtual disk as a secondary hard disk on an existing VM.  Create the secondary VM (on a separate physical host disk, since your current E: is clearly unhealthy!), install the operating system, then go into Virtual Machine > Virtual Machine Settings, and choose the Add... button, choose Hard Disk, choose whatever hard disk type used for the existing hard disk for the new VM, then choose Use an existing virtual disk, and select the hard disk from your existing VM.  When you power on your VM, it will see two hard disks.  Again, you may be able to recover some or all of your guest data, depending on whether the defective part of the host disk is backing a critical part of the guest's disk.

Hope this helps...

--

Darius

0 Kudos
jalexm
Contributor
Contributor

Hello.

1) I don't have a Mount Disk option under Utilities menu.

Is there a separate version of this tool?

2) In your second suggestion, when I try to add a new hard disk, the disk types available are IDE and SCSI (recommended).

SATA is disabled. But I have only SATA (internal disks) and USB (removable disks) available. Can I use SCSI for a USB disk?

Thanks.

0 Kudos
dariusd
VMware Employee
VMware Employee

The virtual disk type is totally independent of the physical hardware type.

Just to be clear: Do not add a second hard disk to the existing (failing) VM.  You want to create a new VM, install an OS into it, then shut it down.  In the virtual machine settings screen, note the type of hard disk that it's currently using... it should show up IDE or SCSI in the list on the left.  Add another hard disk of the same type (IDE or SCSI), and then choose the "Use an existing virtual disk" option and attach the hard disk from your first VM.

Cheers,

--

Darius

0 Kudos
jalexm
Contributor
Contributor

Hello.

I managed to add the failing VM as a secondary disk to another VM and it's called "Hard Disk 2 (SCSI)".

The process was fine, no error message.

But the secondary disk (failing VM) did not show up when I open the good VM.

I cannot see 2 hard disks in Windows Explorer, although I can see them on the VM's bar (top of the screen).

Right clicking the icon on the VM's bar I can see the properties (current size, system free, maximum size) and they are all correct.

Also Device Manager shows 2 entries in Disk Units and they are "working  properly".

Any idea?

Thanks.

Editing: Using Administrative Tools I got secondary disk shows up. I could see some data on the disk but after a boot, chkdsk ran automatically and stopped after some minutes with that VM error message "The operation on file ... failed" and VM crashes.

After a new boot, I pressed some key so that chkdsk did not run and VM started as usual. But everytime I open that folder with +200 files Windows starts a kind of indexing and I got the error message again and VM crashes.

Is there any way to prevent chkdsk from running automatically and also to avoid that annoying indexing?

Thanks for all your help and patience.

0 Kudos
dariusd
VMware Employee
VMware Employee

I'm getting a bit out of my depth in Windows stuff here, but somewhere in the Windows guest's Computer Management program there should be a Disk Management console.  Does that show anything useful?  Maybe you have to mount/activate the second disk...

--

Darius

0 Kudos
jalexm
Contributor
Contributor

Sorry. I was editing my message while you were answering it.


So I repeat here:

Using Administrative Tools I got secondary disk shows up. I could see some of my data on the disk but after a boot, chkdsk ran automatically and stopped after some minutes with that VM error message "The operation on file ... failed" and VM crashes.

After a new boot, I pressed some key so that chkdsk did not run and VM started as usual. But everytime I open that folder with +200 files Windows starts a kind of indexing and I got the error message again and VM crashes.

Is there any way to prevent chkdsk from running automatically and also to avoid that annoying indexing?

I think I will recover some files but it won't be easy.

Thanks for all your help and patience.

0 Kudos
dariusd
VMware Employee
VMware Employee

No worries about editing-while-answering... that happens.  :smileycool:

I have no idea about suppressing the chkdsk.  To avoid the indexing, you might be able to use the command-line to access the files instead of Windows Explorer.  Are you familiar enough with the cmd.exe command-line in Windows to give that a try?

Your next-best option might be to try using some data recovery software on the host to recover as much of the virtual machine's files as possible... If that succeeds, the virtual machine would just see a block of lost data at that spot of the virtual disk, instead of the VM failing whenever it tried to read that block.  chkdsk would be able to complete -- and possibly even be able to repair the virtual disk, if the failed part of the physical disk isn't in too critical of a location.

Cheers,

--

Darius

0 Kudos
jalexm
Contributor
Contributor

It's a very good idea to use cmd.exe. I forgot it, since I don't use it regularly.

Also, I'm thinking about to start VM using Windows Safe Mode.

I will try to copy all files I can before using some data recovery tool on the host.

I'm afraid the things get worse.

I will post the results here since it's important to all users know what solution we get to this terrible situation.

Your help has been very precious.

Many thanks.

0 Kudos
jalexm
Contributor
Contributor

Hello.

As promised, I'm back to tell you about the results.

Incredible! But after a month of hard work I managed to recover almost all of my files.

I could not retrieve only less than 1% of the files.

What I did:

1) Added the damaged VM as a secondary disk to a good VM.

2) Started good VM and copied files from damaged VM using Command Prompt, not Windows Explorer.

3) Avoided to copy large amount of files (no more than 100 at once).

When I tried to copy a damaged file, VM crashed. In my opinion, VM should show an error message and continue to work without crashing.

In fact there was an error message, but it crashed anyway whatever the button I clicked on.

Also, VM crashed sometimes even when I tried to copy good files. The reason was the large amount of files. That's why I used the limit of copying only 100 files at once.

Now I have a question. There are some data recovery software out there. Should I install this kind of software inside good VM and try to recover the missing files or shoud I install it on host and try to recover damaged VM files?

Thanks.

0 Kudos
dariusd
VMware Employee
VMware Employee

Hi again jalexm!

Good to hear that you have made some progress.

I agree that it would be ideal if the virtual machine would not crash when the host's disk is failing, but the way in which your disk is failing ("Invalid MS-DOS function"?  Seriously?) is not something we can even attempt to recover from.  That error code should be considered unrecoverable... because it is simply wrong.  I have no idea how or why it is failing in that way instead of giving a more typical I/O error or disk read error or something...  I know that we could improve our handling of failing hard disks, but there's something super weird about your failing disk which would make it unrecoverable anyway.

If you install data recovery software inside the guest, it will almost certainly trigger the same crash of the virtual machine when the data recovery software tries to read the defective part of the disk.

Your best bet is to try using data recovery software on the host.  I have no way of knowing whether any particular package might handle the "Invalid MS-DOS function" error better than any other package...  I have no advice in that regard.  But definitely try doing the data recovery from on the host, not from inside the virtual machine.

Thanks,

--

Darius

0 Kudos
jalexm
Contributor
Contributor

Hello.

I'm really not lucky with VMs. Now my new VM is not loading.

It's on a brand new physical hard disk which is working fine.

I get a "Windows Boot Manager" black&white screen telling me "\windows\system32\winload.exe is missing or corrupt" due to "a recent hardware or software change" (???).

I just started new VM as I did many times today! No software/hardware change!

That screen asked me to insert Windows installation disk and restart system.

I inserted the disk, pressed Esc (it's the only thing to do since pressing Enter goes to another screen then backs to the first one).

VM restarts but it doesn't read the disk. In fact, the disk appears in the host.

What's happening? How can I solve that?

Thanks.

0 Kudos
dariusd
VMware Employee
VMware Employee

Is the new disk formatted with HFS+, NTFS, FAT32, exFAT, or something else?

My first step would be to use Disk Utility to check the integrity of the filesystem on which the virtual machine is stored.  If you haven't powered on the VM too many times, there might still be useful information in the vmware.log and other .log files within the failing virtual machine's bundle.  (Those files are rotated around each time you power on the VM.)  If those files look useful, feel free to attach them and I'll see if there are any hints there.

Thanks,

--

Darius

0 Kudos
jalexm
Contributor
Contributor

New disk is formated with NTFS.

Ther are only some files on it, including my new VM.

I have used the VM few hours ago. Then I tried to run it again and got that message.

Why didn't Windows disk read at restart?

Well, I have powered on VM some times.

Log file is attatched.

Thanks.

0 Kudos
dariusd
VMware Employee
VMware Employee

We have had a handful of other users reporting issues with running virtual machines on disks using Paragon's NTFS driver.  Is that what you are using?  If so, have you verified that you have the latest version of Paragon NTFS?

Please do launch Disk Utility and use its First Aid tab to Verify Disk (and, if necessary, Repair Disk).

Thanks,

--

Darius

0 Kudos
jalexm
Contributor
Contributor

I'm not using Paragon's NTFS drivers. I never installed them.

In fact, the disk is preformatted, and Windows only tells me "NTFS".

Where is Disk Utility? Utilities button only shows Defragment, Expand and Compact.

Can I download it?

0 Kudos
dariusd
VMware Employee
VMware Employee

Ah, sorry, I confused this thread with VMware Fusion.  (Trying to do too much at once.  Smiley Sad).  Ignore my comments about Paragon NTFS and Disk Utility.

--

Darius

0 Kudos
jalexm
Contributor
Contributor

No problem.

Have you found anything in log file?

0 Kudos