How to launch VMware Player VMs without GUI

If you are a user of VMware Player, you may have wondered whether it's possible to run VMware player without GUI. For example, when you are accessing VMware hosts via SSH remotely, you may want to run VMware Player from the command line. While you can use X11 forwarding over SSH to launch VMware player's GUI from remote locations, it will be rather inconvenient if the SSH connection is slow. Furthermore, the VM launched inside VMware Player's GUI window will automatically be stopped when you close the VMware Player window.

If you would like to start or stop VMware Player VMs without GUI, you can use vmrun which is a command-line utility which one can use to automate operations on VMware virtual machines (VMs). vmrun is contained in VMware VIX API libraries which are freely downloadable from VMware website. You can follow the instructions below to manage VMware Player VMs remotely.

I assume that you have already created a VM using VMware Player, and so have *.vmx files ready somewhere. Now you want to start/stop the VM using vmrun. You don't need root permission to use vmrun command.

First, download VMware VIX for Linux, and then install it on the VMware host as follows.

$ chmod 755 ./VMware-VIX-1.11.0-471780.x86_64
$ sudo ./VMware-VIX-1.11.0-471780.x86_64

To start VM:

$ vmrun -T player start /path/to/vm/my.vmx nogui

To reboot VM:

$ vmrun -T player reset /path/to/vm/my.vmx soft

To power off VM:

$ vmrun -T player stop /path/to/vm/my.vmx soft

VMware Player does not support VM snapshot operations. So you cannot take a snapshot of VMware Player VMs using vmrun. But if your VM was created using VMware Workstation or VMware Fusion, you can take a snapshot of a running VM as follows.

$ vmrun -T ws (or fusion) snapshot /path/to/vm/my.vmx my_snapshot

Subscribe to Xmodulo

Do you want to receive Linux FAQs, detailed tutorials and tips published at Xmodulo? Enter your email address below, and we will deliver our Linux posts straight to your email box, for free. Delivery powered by Google Feedburner.

Support Xmodulo

Did you find this tutorial helpful? Then please be generous and support Xmodulo!

The following two tabs change content below.
Dan Nanni is the founder and also a regular contributor of He is a Linux/FOSS enthusiast who loves to get his hands dirty with his Linux box. He likes to procrastinate when he is supposed to be busy and productive. When he is otherwise free, he likes to watch movies and shop for the coolest gadgets.

9 thoughts on “How to launch VMware Player VMs without GUI

  1. I am running Ubuntu 12.04 (64bit) and vmplayer 5 (upgraded from 4). The command vmrun isn't found, so I downloaded VMware-VIX-1.12.1-984247.x86_64.bundle and tried to run it from the folder I saved it to.

    $sudo ./VMware-VIX-1.12.1-984247.x86_64.bundle

    All I get is command not found.

    Any ideas on how I can install this and get vmrun going as I want to delete some vmplayer client OS s.

    Thanks in advance.

  2. Thanks a lot. I got it working on win 7 host (rhel 6 guest) following your article.
    Best Regards.

  3. I tried your solution but I always have this error:

    Error: Service type VIX_SERVICEPROVIDER_VMWARE_WORKSTATION was specified, but not installed

    Here is my configuration:
    - VMware Player 4.0.4 build-744019
    - VIX installed from source VMware-vix-1.6.2-127388.i386.tar.gz
    - Ubuntu 10.04 32 bit
    - vixwrapper-config.txt is:

    # VixAllProducts revision mapping
    # This file translates product version specifications into the appropriate Vix
    # implementations.
    # Each @Version-Info line has 5 white-space seperated entries:
    # provider-type: ws, esx, viserver, etc
    # apiVersion: the apiVersion supported, as passed in from VixHost_Connect()
    # ipc-type: none, vmdb, vmodl, cim
    # product-version: the product version string
    # implementation-directory: the path to the library that implements the
    # version described by the first 4 parameters

    # player
    player 14 vmdb 4.0.4 server-1

    # server 1.0.x
    server 1 vmdb 1.0.3 server-1

    # Workstation 6.0.0
    ws 2 vmdb 6.0.0 ws-2

    # Workstation 6.0.1
    ws 3 vmdb 6.0.1 ws-3

    # Workstation 6.0.2 -- same version of vmdb as 6.0.1
    ws 3 vmdb 6.0.2 ws-3

    # Workstation 6.0.3
    ws 5 vmdb 6.0.3 ws-5

    # XXX hack to support transient names XXX
    esx 4 none 3.1.0 ws_server_esx-4
    viserver 4 none 2.0.0 ws_server_esx-4
    ws 4 vmdb e.x.p ws_server_esx-4
    ws 4 vmdb 6.5.0 ws_server_esx-4

    # Workstation 6.5.0
    ws 4 vmdb 6.5.0 Workstation-6.5.0
    ws 4 vmdb e.x.p Workstation-6.5.0

    # to add once its in installer
    viserver 4 none 2.0.0 VIServer-2.0.0
    esx 4 none 3.5.0 VIServer-2.0.0

    # EOF

    Where I've just added the player entry.
    Does vmware-workstation need to be installed or is it ok if we only have vmplayer installed?

    • You only need to install VMware Player. There is no need to install VMware Workstation in order to use VIX.

      Try adding the following to vixwrapper-config.txt:

      # Workstation 8.0.0
      ws 14 vmdb 8.0.0 Workstation-8.0.0-and-vSphere-5.0.0
      player 14 vmdb 4.0.0 Workstation-8.0.0-and-vSphere-5.0.0
      ws-shared 14 none 8.0.0 Workstation-8.0.0-and-vSphere-5.0.0

      If that doesn't work out, try upgrading to VMware Player 5, and use VIX binary installation as described in the post.

    • I just found out myself, all you have to do is to set the parameter for host type, as such:
      vmrun -T player suspend

  4. Hi,

    I executed and returned this error. Can you help me?

    # vmrun -T player start /opt/HP/FOM/FOM.vmx nogui
    Error: Unknown error

Leave a comment

Your email address will not be published. Required fields are marked *