Problem:
Error message above is flooded in Event Viewer on a MS Windows VM guest when vmtools upgrade is performed to 5.1 but I encountered the same error recently after fresh installation of VMWare tools on new VM guest.
Error message for Linux guest is the same. According to KB2036350 - this should be fix the problem, however the tools.conf sometimes is not created.
Resolution:
The RPC errors mentioned above is caused because of missing vmtools configuration file (tools.conf) within VMware Tools directory. Once you put the configuration file in place and restart the VMTools service, everything seems to be OK.
This procedure is preferred in production environment because guest reboot is not required. You may resolve the problem by simply uninstall/install vmtools but you must schedule VM guest restart at your convenience.
Create tools.conf in the location for:
- MS Windows 2K/XP2K3
C:\Documents and Settings\All Users\Application Data\VMware\VMware Tools\tools.conf
- Windows Vista/7/2K8, and 2012:
C:\ProgramData\VMware\VMware Tools\tools.conf
- Linux:
/etc/vmware-tools/tools.conf
Put the following into the file:
[logging]
log = true
# Enable tools service logging to vmware.log
vmsvc.level = debug
vmsvc.handler = vmx
# Enable new “vmusr” service logging to vmware.log
vmusr.level = error
vmusr.handler = vmx
# Enable “Volume Shadow Copy” service logging to vmware.log
vmvss.level = debug
vmvss.handler = vmx
Then restart VM Tools
- Windows command prompt:
c:\Users\user1> net stop VMtools && net start VMtools
- Linux:
$sudo /etc/init.d/vmware-tools restart
I've used this simple VBscript below to copy tools.conf to the appropriate location and restart vmtools service. Use it standalone, for mass deployments - by MS Group Policy, VMware Guest Console or whatever you decide.
'Copy file: source - destination
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
FSO.CopyFile "\\NAS\PATH_TO \tools.conf", "C:\Documents and Settings\All Users\Application Data\VMware\VMware Tools\"
' Stop & Start Service'
Dim objWMIService, objItem, objService
Dim colListOfServices, strComputer, strService, intSleep
strComputer = "."
intSleep = 10000
' Caution -> strService is case sensitive!
strService = " 'VMtools' "
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
Set colListOfServices = objWMIService.ExecQuery _
("Select * from Win32_Service Where Name ="_
& strService & " ")
For Each objService in colListOfServices
objService.StopService()
WSCript.Sleep intSleep
objService.StartService()
Next
WScript.Quit
Thanks man! This solved the problem which was present on a bunch of our Exchange servers
ReplyDeleteThank you! Solved my problem.
ReplyDeleteThank you! Solved my problem.
ReplyDeleteThat fixed
ReplyDeleteThanks a lot
T H A N K Y O U!!!
ReplyDeleteVMWare was not able to give the correct hint. appreciate!
Work for me!!! Thanks a lot!!!!
ReplyDeleteIf you have multiple users logged on the machine you might have to kill all vmtools processes also for them.
ReplyDelete