Tips for editing a .vmx file
search cancel

Tips for editing a .vmx file

book

Article ID: 345489

calendar_today

Updated On:

Products

VMware VMware Desktop Hypervisor VMware vSphere ESXi

Issue/Introduction

This article provides tips for editing a virtual machine's configuration file (.vmx).

Environment

VMware ESXi 4.0.x Embedded
VMware ESX 4.0.x
VMware ESX Server 3.5.x
VMware vSphere ESXi 5.5
VMware ESXi 3.5.x Embedded
VMware ESXi 4.1.x Installable
VMware ESXi 3.5.x Installable
VMware ESXi 4.0.x Installable
VMware ESXi 4.1.x Embedded
VMware ESX 4.1.x
VMware vSphere ESXi 5.1
VMware vSphere ESXi 5.0

Resolution

Working with the .vmx file

Some workaround procedures include steps that require you to edit .vmx files.

Note these important characteristics of the .vmx file:
  • The .vmx file is typically located in the directory where you created the virtual machine.
     
    • In Windows XP and Server 2003, the default location for the file is:

      C:\Documents and Settings\your_user_name\My Documents\Virtual Machines\virtual_machine_name.vmx
       
    • In Windows Vista, Windows 7, and Windows Server 2008, the default location for the file is:

      C:\Users\your_user_name\My Documents\Virtual Machines\virtual_machine_name.vmx
       
    • In Linux, run the vmware-cmd -l command to list the full path to all registered .vmx files.
       
    • For ESXi/ESX, the vmInventory.xml (located in /etc/vmware/hostd) contains the .vmx file path of every virtual machine registered to it.
  • The virtual machine actively writes to its .vmx file. Never edit this file while its virtual machine is running.
  • Changes to the file are usually version specific. If you upgrade, the workaround you implemented may no longer work.

Before you edit the .vmx file:
  • Always power off the virtual machine.
  • Make sure you are logged on as a user with the correct permission level to edit the file.
  • Make a backup copy of the .vmx file. If your edits break the virtual machine, you can roll back to the original version of the file.
  • For more information on using the vi editor to edit files, see Editing files on an ESX host using vi or nano (1020302).

    Note: VMware also recommends making a backup copy of the edited file. If future administrative changes to the virtual machine overwrite your edited version, you can cut and paste the specific section you want from the backup copy into the current file. Do not replace an entire .vmx file with an older backup.
 

ESXi/ESX with vCenter Server

Manual additions to the .vmx file from ESXi/ESX are not recognized in vCenter Server. This can cause manual additions to the .vmx file to be overwritten. To resolve this issue, make the required changes to the .vmx file and see Reloading a vmx file without removing the virtual machine from inventory (1026043).
 
Alternatively, to modify the virtual machine's .vmx file:
  1. Remove the virtual machine from vCenter Server inventory.

    To remove the virutual machine from the vCenter Server inventory, right-click the virtual machine and click Remove from Inventory.
     
  2. Edit the .vmx file.
  3. Re-register the virtual machine from the ESXi/ESX command line.

To register the virtual machine from the command line:

  • On ESX 3.x, run the command:

    vmware-cmd -s register /vmfs/volumes/datastore/virtual_machine_directory/virtual_machine_name.vmx

    Where datastore is the datastore name, virtual_machine_directory is the directory containing the virtual machine files, and virtual_machine_name is the name of the virtual machine files.

    For example:

    vmware-cmd -s register /vmfs/volumes/Storage1/vm1/vm1.vmx

    Output of return code =1 indicates success.
     
  • On ESXi 3.5, ESXi/ESX 4.x, and ESXi 5.0/5.1/5.5, run the command:

    vim-cmd solo/registervm /vmfs/volumes/datastore/virtual_machine_directory/virtual_machine_name.vmx

    For example:

    vim-cmd solo/registervm /vmfs/volumes/Storage1/vm1/vm1.vmx

Additional Information

For translated versions of this article, see: