18

I have multiple virtual machines setup in VMware Fusion.

Some of them are only servers (like Ubuntu), which I want to run without seeing the VMware Fusion icons or windows, a little like VMware Server does.

Does anyone have a solution?

2
  • If you don't want to see the icon try the procdure reported here apple.stackexchange.com/questions/68915/…. For the screen you can minimize it probably. Of course it's not exactly what you want.
    – Maverik
    Oct 19, 2012 at 14:23
  • 1
    I'm not sure how to do this with Fusion, but the free VirtualBox is capable of doing that using it's command-line tools and more than sufficient for running headless Linux servers.
    – Gerry
    Oct 19, 2012 at 14:58

4 Answers 4

24

It appears you can start Fusion headless by executing the following:

/Applications/VMware\ Fusion.app/Contents/Library/vmrun -T fusion start ~/Documents/Virtual\ Machines.localized/[IMAGENAME].vmwarevm/[IMAGENAME].vmx nogui

You could also add /Applications/VMware Fusion.app/Contents/Library to your $PATH or create an alias to have easier access to the vmrun command.

You can find more info on the vmrun command in this PDF. While a bit out-dated, it should still contain relevant information on how to start and stop your server.

If you are interested in running headless Linux servers for your development environment etc, I can also highly recommend to use VirtualBox instead. It is free, has extensive command-line support, and while running headless VMs Fusion loses most if its advantages (seamless GUI integration) over VirtualBox anyway. What's more, tools like Vagrant can even facilitate running these environments to a much greater extent. With the addition of a paid add-on ("provider"), Vagrant can control VMWare as well as VirtualBox for you3.

2
  • 1
    Since this answer still appears when searching for this question it's worth mentioning there is at least one very good reason to run your VM's headless in Fusion vs. going to VirtualBox: performance. Fusion still outperforms VirtualBox in almost all benchmarks (indeed, Virtualbox can't even run some benchmarking software without crashing the VM). See tekrevue.com/2015-vm-benchmarks-parallels-11-vs-fusion-8 for more info. Sep 21, 2015 at 21:49
  • Update from 2023, VirtualBox can't handle VLAN interfaces on the Mac. I have 1 ethernet cable delivering 2 VLAN's and 2 virtual interfaces each for one VLAN. Virtualbox is never able to get traffic or even have the VM's getting IP. Tried all network card options, promiscuous, anything. VMWare works instantly. Jun 23 at 14:57
11

An additional way, you can start up the VMs you want and then force quit VMware Fusion using Command+Option+Shift+Esc

The GUI quits but the VMs run in the background. To manage these VMs you can start VMware fusion again as usual and it will show you what's currently running.

1
  • 2
    I like this method, since it's quick and dirty, but you have your shortcut incorrect for the force quit. It's CMD+OPT+Esc. No shift needed.
    – kenny
    Jan 19, 2015 at 17:55
0

The best I can figure without hacking into the Dock is to set VMWare fusion to launch at boot and hide itself. The OS is designed to show apps that call for a graphical interface, so it's really up to VMWare to program their app to run as a background daemon if you don't want to work around this OS feature.

You could also explore placing that app under Mission Control and putting it on a secondary virtual display so you don't see it unless you need to observe a guest OS.

2
  • Nit pick, your link doesn't describe hacking the Dock so much as hacking apps. Hiding app icons for apps that say "please hide my icon, I'm a UI element" is native Dock functionality. Aug 21, 2020 at 19:32
  • Off this we’re asked today, I’d probably explain how to do this in mission control @Wowfunhappy I’m content to let this fade into obscurity without any edits...
    – bmike
    Aug 22, 2020 at 0:15
0

An alternative solution which is simple to hide the VM window is to press command+h. However, it does not remove the VMware Fusion icon.

You must log in to answer this question.