Hi,
If I run a VM from a NAS, I get and error "Cannot open the disk '/Volumes/Me/VM/Mine/MyDisk.vmdk' or one of the snapshot disks it depends on."
This is odd because it only fails over an SMB connection. If I connect to the NAS using AFP (Apple File Protocol), it runs fine. Copying the VM to my local machine also works fine.
I found a few threads referring to this error, but none of the solutions worked: deleting lck files and folders, removing and reattaching disks, and I have no snapshots.
Since it works over AFP, I suspect it has to do with SMB protocol, or something internal to VMWare.
Looking at the logs (selection posted below), I see there are definitely some SMB-specifics in there, so VMWare is definitively 'aware' of what network it's using. Over AFP only one instead of four lock folders are created. Full permissions are granted on the entire VM folder.
Systems: Fusion 8.5.6 on OSX 10.12 (Sierra), QNAP NAS with SSD caches and dual gigabit network.
Any help would be much appreciated.
2017-03-29T21:29:13.198Z| vmx| I125: FILE: FileLockScanDirectory discarding .smbdeleteAAA6c20cf4 from /Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro.vmsd.lck'; invalid file name.
2017-03-29T21:29:13.200Z| vmx| W115: FILE: FileLockRemoveLockingFile of '/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro.vmsd.lck/.smbdeleteAAA6c20cf4' failed: Resource busy
...
2017-03-29T21:29:13.213Z| vmx| I125: DISK: OPEN ide0:0 '/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk' persistent R[]
2017-03-29T21:29:13.309Z| vmx| I125: FILE: FileLockScanDirectory discarding .smbdeleteAAA6c20cf5 from /Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk.lck'; invalid file name.
2017-03-29T21:29:13.310Z| vmx| W115: FILE: FileLockRemoveLockingFile of '/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk.lck/.smbdeleteAAA6c20cf5' failed: Resource busy
2017-03-29T21:29:13.316Z| vmx| W115: FILE: FileIO_Lock on '/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk' failed: Resource busy
2017-03-29T21:29:13.316Z| vmx| I125: DISKLIB-DSCPTR: Couldn't lock descriptor file /Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk: Error (2).
2017-03-29T21:29:13.316Z| vmx| I125: DISKLIB-LINK : "/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk" : failed to open (Directory not empty).
2017-03-29T21:29:13.316Z| vmx| I125: DISKLIB-CHAIN : "/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk" : failed to open (Directory not empty).
2017-03-29T21:29:13.316Z| vmx| I125: DISKLIB-LIB : Failed to open '/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk' with flags 0x1a Directory not empty (4325385).
2017-03-29T21:29:13.316Z| vmx| I125: DISK: Cannot open disk '/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk': Directory not empty (4325385).
2017-03-29T21:29:13.316Z| vmx| I125: DISK: Opening disks took 104 ms.
2017-03-29T21:29:13.316Z| vmx| I125: Module 'Disk' power on failed.
2017-03-29T21:29:13.316Z| vmx| I125: VMX_PowerOn: ModuleTable_PowerOn = 0
2017-03-29T21:29:13.384Z| vmx| I125: Vix: [775 mainDispatch.c:1179]: VMAutomationPowerOff: Powering off.
2017-03-29T21:29:13.385Z| vmx| W115: /Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro.vmx: Cannot remove symlink /var/run/vmware/501/113808639716_7377/configFile: No such file or directory
2017-03-29T21:29:13.386Z| vmx| I125: Policy_SavePolicyFile: invalid arguments to function.
2017-03-29T21:29:13.386Z| vmx| I125: PolicyVMX_Exit: Could not write out policies: 15.
2017-03-29T21:29:13.387Z| vmx| I125: WORKER: asyncOps=1 maxActiveOps=1 maxPending=0 maxCompleted=0
2017-03-29T21:29:13.390Z| vmx| I125: Vix: [775 mainDispatch.c:4238]: VMAutomation_ReportPowerOpFinished: statevar=1, newAppState=1873, success=1 additionalError=0
2017-03-29T21:29:13.391Z| vmx| I125: Msg_Post: Error
2017-03-29T21:29:13.391Z| vmx| I125: [msg.literal] Directory not empty
2017-03-29T21:29:13.391Z| vmx| I125: [msg.disk.noBackEnd] Cannot open the disk '/Volumes/Me/VM/WinXP_Sandbox/WinXP_Pro_SP3.vmdk' or one of the snapshot disks it depends on.
2017-03-29T21:29:13.391Z| vmx| I125: [msg.moduletable.powerOnFailed] Module 'Disk' power on failed.
Hi,
You only post and excerpt of the log file, so my initial guess is that your user account does not have sufficient credentials to the smb share to:
- read/write
- create/delete files
- create/delete folders
on that particular folder.
PS: Personally I would _never_ use smb to run a virtual machine on, fearing corruption due to the opportunistic locking mechanism that is built into samba.
OTOH using NFS would be OK, I don't know enough about the internals of afp to advice either way.
--
Wil
Agreed completely - aside from the locking risk and performance problems, one dropped connection results in a halted, and possibly corrupt, vm.