MacLochlainns Weblog

Michael McLaughlin's Technical Blog

Site Admin

VMWare nabs me again …

with 7 comments

When I run into failures on VMWare Fusion, they’re always a bit tedious. This one happened on my iMac (OS X Leopard) running VMWare 2 (both constrained to old releases by university governance policies). The VM is Microsoft Vista in an IDE partition, it hung after running too long. I had to force quit the application. On reboot the socket file was still there, and it gave the following error message when trying to start it.

VMwarefusionvirtualdevice0

Here’s the error in plain text, so search engines can find it for others.

Virtual device serial0: File "/var/folders/Sf/SfvoJITAHMq1Vp8bNI7QZU+++TM/-Tmp-//vmware-mmclaugh/thnuclnt-641/socket" exists, but no server is listening to it.
 
There are three possible causes for this:
 - The server is alive but not ready yet, and you can retry later.
 - The server is busy communicating with another client, so you cannot run this client at the same time.
 - A previous server exited abruptly, and you can remove the file and try again.
 
The device will be disconnected.

How to fix it?

Delete the file, right? Yes, but there’s a trick. Navigating through the -Tmp- directory required a Unix shell trick because the - (dash) is a switch and backquoting it with a \ (backslash) didn’t work. Jeff Yoder, told me the trick to change directory into a dash leading directory name. It was this:

cd -- -Tmp-

The -- is how most shells mark the end of options to a command. After a -- all - (dashes) are treated as ordinary characters.

Mark Olaveson reminded me that using the present working directory before the directory name also worked. It demotes the dash to an ordinary character too.

cd ./-Tmp-

When I got to the directory, there was the socket file. I deleted it and everything worked like a charm.

srwxrwxrwx  1 mmclaugh  staff     0 Dec  8 13:04 socket

Written by maclochlainn

December 8th, 2009 at 3:43 pm

7 Responses to 'VMWare nabs me again …'

Subscribe to comments with RSS or TrackBack to 'VMWare nabs me again …'.

  1. Can you help me a bit more…I am just a guy that turns on the iMac and goes. I don’t want to make things worse by poking around. How do I “navigate through the -Tmp- directory” in “a Unix shell”? Pardon my ignorance, but I don’t really know what that means. Thanks for your help. E

    Eric Stark

    18 Apr 10 at 7:43 am

  2. Eric, Everybody starts someplace. You navigate with Finder to the Applications folder, then choose the Utilities folder. There, you’ll find the Terminal program. It provides you with command-line access to Mac OS X.

    You can then, type this based on the example in the post:

    cd /var/folders/Sf/Sf*

    That puts you one directory (folder) above the -Tmp-, the syntax in the post does the rest.

    maclochlainn

    18 Apr 10 at 9:36 am

  3. Oh, and I did a search for “-tmp-” in the Finder, and found a “socket” file which I then deleted. This did not help (did I hurt something? Should I restore the file? and if so how?)
    Thanks.
    E

    Eric Stark

    18 Apr 10 at 12:40 pm

  4. If you were able to restart VMWare, then it was correct.

    maclochlainn

    19 Apr 10 at 12:02 am

  5. I was not able to restart VMWare. Can I hurt anything by deleting any/all “socket” files?

    Eric Stark

    19 Apr 10 at 7:56 pm

  6. Can’t find any more socket files. Still doesn’t start. Any suggestions at all would be appreciated. Thanks for all your time!
    Eric

    Eric Stark

    20 Apr 10 at 5:49 am

  7. I don’t know. Did you remove the *.lck file?

    You can find that file in the Virtual Directory for your VM. Go to the directory where they’re stored, typically you can get there in a Terminal session with the following syntax:

    cd ~/Documents/Virtual\ Machines.localized/virtual_machine_name/*.lck

    There you should see a file with a .lck extension. Delete the file from the command line, like this:

    rm *.lck

    Hope this solves it.

    maclochlainn

    21 Apr 10 at 9:22 pm

Leave a Reply