I'm having trouble starting up my XP virtual machine under OS X 10.4.11 on an intel iMac. I'm running Fusion for Mac 1.1.2. I've installed the Windows XP virtual machine in user1/graphics/document folder. I've shared the folder and file so that other users can access its contents. Previously, user2 (on the mac) could log in in OS X and start up the Windows XP under user1/graphics/document folder without any problems. Now, it gives the following error:
File Not Found: Windows XP Proessional-000002.vmdk
This file is required to power on this virtual machine. If this file was moved, please provide its new location.
Cancel Browse.
I've tried searching for this file but it's not to be found. What can I do if I have to allow user 2 to access this same virtual machine?
Thanks
D
Note the first three files are only r/w by graphics, not scwu (which I assume is User2) - this is a problem. As graphics, try chmodding them to be a+rw.
That's a post-snapshot file. It will contain any changes made to your disk since you took your most recent snapshot, and it represents the state of the virtula machine "now".
The file will normally exist in the folder with your VM. It's possible that a Revert-to-snapshot failed and left the config file alone while deleting the file, but I've never heard of anything like that happening and the code paths are very conservative in order to prevent such things.
If user1 can run the VM as is, it's a permissions issue.
If user1 gets the same error, you can manually roll back to the last snapshot (and boot your VM) by opening the VM's config file (<your-vm-name>.vmx) in TextEdit and changing the line mentioning "Windows XP Professional-000002.vmdk" to "Windows XP Professional.vmdk". If you do this, you are throwing away any changes made since taking the snapshot.
I'd guess it's a permissions issue. Remember that by default, a virtual machine is a bundle - you have to fix the permissions on the contents as well. By default, Windows XP Professional-000002.vmdk is inside the .vmwarevm bundle.
Is the .vmwarevm bundle under the Virtual Machine folder called Windows XP Professional? When I find it, how do I fix the permissions? I've previously set the permissions via right clicking and changing the permissions under the Ownership & Permissions section of the pop up window in OS X. What should the permissions be set to? I've set it to Read & Write for both User1, User2, and Others. It worked before this way.
Under Terminal, this is what it shows:
drwxrwxrwx 17 graphics scwu 578 Jul 7 10:17 Windows XP Professional.vmwarevm
It's been years since I've had to touch permissions under Unix this way. I believe it says that I've given read, write, and execute permissions to all if I'm not wrong.
Previously, I tried running Disk Utility's permission repair. It didn't do anything. I took a snapshot. Didn't do anything except the error prompt says Windows XP Professional-000003.vmdk file not found.
Thanks
Added additional permission settings info from Terminal.
User1 can run the VM as is. User1 is not an admin. Unfortunately, User2 has admin rights but cannot run VM.
How do I find the .vmwarevm bundle?
You can mouse-over the target Virtual Machine entry on the Virtual Machine Library window and in a few moments it should show the path.
Also by default normal file based Fusion Virtual Machines are created in the "~/Documents/Virtual Machines" folder.
~ Is your Home Folder
They are placed in a Folder (Bundle Package) with an extension of ".vmwarevm" which by default the extension is not visible in Finder.
Example: "~/Documents/Virtual Machines/Windows XP.vmwarevm" would in Finder just look like an icon named "Windows Vista"
You can view the Package Contents of the "Windows XP.vmwarevm" folder by ctrl-click (or right+click) the "Windows Vista" icon and select Show Package Contents.
You can also use Spotlight and search for vmwarevm to locate any Virtual Machine Bundle Package in the event you have stored or moved your Virtual Machine to a non-default location.
Since Virtual Machine's Virtual Hard Drives are typically large you can also search your hard drive using a program like GrandPerspective as this can help determine if it is still on the Macintosh HD.
Another way of looking for the Virtual Machine Bundle Package is to use a Terminal (/Applications/Utilities/Terminal) and copy & paste the following command the press Enter and type in your password and press Enter. This command will take a while to run so just wait until the command prompt returns and you will have a list of all Virtual Machine Bundle Packages that exist on the hard drive.
sudo find / -name *.vmwarevm
How do I find the .vmwarevm bundle?
The default location is /Users/$/Documents/Virtual Machines/ You can also find it by hovering over the Virtual Machine Library entry; the full path should show up in a tooltip.
When I find it, how do I fix the permissions? What should the permissions be set to?
In the Finder, Get Info. User2 needs to be able to read/write the file. Some people have said that even this doesn't work; you may have to discard the snapshot to get user 2 to be able to use the virtual machine.
Previously, I tried running Disk Utility's permission repair. It didn't do anything.
That won't help. What Disk Utility's permissions repair does is it compares the files it knows about (e.g. programs you've installed via Software Update or which use Apple's standard installer) with their permissions. It doesn't affect anything else, such as your user files.
When I find it, how do I fix the permissions? What should the permissions be set to?
In the Finder, Get Info. User2 needs to be able to read/write the file. Some people have said that even this doesn't work; you may have to discard the snapshot to get user 2 to be able to use the virtual machine.
It seems like the permissions are set to read/write for User2 (see my edited reply about terminal above). If I discard the snapshot, will I lose files i've created in the XP virtual machine? How do I discard the snapshot?
I've tried deleting preference files in the User2/Library/Preferences/VMware Fusion/*, but that has not worked either.
I found the "Discard Snapshot" under the Virtual Machine option in the drop down menu of VMware Fusion. I selected it, and it refused to discard the snapshot, saying
"Error deleting snapshot: A needed file was not found."
I've tried changing the permission of Windows XP Professional-000003.vmdk via chmod, but it says Operation not permitted.
chmod a=rwx Windows*
chmod: Windows XP Professional-000003.vmdk: Operation not permitted
chmod: Windows XP Professional.vmdk: Operation not permitted
drwxrwxrwx 17 graphics scwu 578 Jul 7 10:17 Windows XP Professional.vmwarevm
It seems like the permissions are set to read/write for User2 (see my edited reply about terminal above).
This is just permissions on the vmwarevm bundle - you also need to also check the contents of the bundle.
If I discard the snapshot, will I lose files i've created in the XP virtual machine?
No, discarding a snapshot merges changes back to the base disk (as opposed to reverting to a snapshot, which gets rid of the changes). Confusing, I know, but it's historical now.
"Error deleting snapshot: A needed file was not found."
Was this as user 1 or 2?
Please paste a Terminal listing (ls -l, just like you did before) of the contents of the vmwarevm bundle.
Was this as user 1 or 2?
User2
Please paste a Terminal listing (ls -l, just like you did before) of the contents of the vmwarevm bundle.
Apple-Dee:/Users/graphics/Documents/Virtual Machines/Windows XP Professional.vmwarevm scwu$ ls -l
total 28019016
drwxrwxrwx 22 graphics graphics 748 Jul 3 17:28 Applications
-rw------- 1 graphics scwu 317325312 Jul 7 11:21 Windows XP Professional-000003.vmdk
-rw------- 1 graphics scwu 536870912 Jul 3 16:57 Windows XP Professional-Snapshot3.vmem
-rw------- 1 graphics scwu 19074949 Jul 3 16:57 Windows XP Professional-Snapshot3.vmsn
-rw-rw-rw- 1 graphics graphics 8684 Jul 7 11:21 Windows XP Professional.nvram
-rw-rw-rw- 1 graphics graphics 13472104448 Jul 3 17:06 Windows XP Professional.vmdk
-rw-rw-rw- 1 graphics graphics 1013 Jul 3 17:06 Windows XP Professional.vmsd
-rwxrwxrwx 1 graphics graphics 2042 Jul 7 11:19 Windows XP Professional.vmx
drwxrwxrwx 3 scwu scwu 102 Jul 7 12:38 Windows XP Professional.vmx.lck
-rw-rr 1 graphics wheel 79243 Jul 7 11:19 vmware-0.log
-rw-rr 1 graphics wheel 86015 Jul 7 11:19 vmware-1.log
-rw-rr 1 graphics wheel 92574 Jul 3 17:41 vmware-2.log
-rw-rr 1 graphics wheel 77022 Jul 7 11:21 vmware.log
Note the first three files are only r/w by graphics, not scwu (which I assume is User2) - this is a problem. As graphics, try chmodding them to be a+rw.
Thanks! It worked.