Error: "A specified parameter was not correct: spec.deviceChange.device" when attempting to take a snapshot on a VM
search cancel

Error: "A specified parameter was not correct: spec.deviceChange.device" when attempting to take a snapshot on a VM

book

Article ID: 389268

calendar_today

Updated On: 06-29-2025

Products

VMware vSphere ESXi

Issue/Introduction

  • Taking a snapshot on a VM fails
  • The VM is configured with mixed storage hard disks such as NFS and VVOLs
  • The snapshot fails with the following error:

    A specified parameter was not correct: spec.deviceChange.device An error occurred while taking a snapshot: One of the parameters supplied is invalid. An error occurred while saving snapshot file "/vmfs/volumes/<datastore>/VM/VM.vmsn". An error occurred while saving the snapshot: One of the parameters supplied is invalid.

  • Snapshots still fail on the VM even when:
    • the VM is migrated to another ESXi host
    • the VM is power cycled
    • the VM is cloned and a snapshot of the cloned VM still fails

  • Storage migration of the disks to where the .vmx file resides allows the snapshot to work
  • The VM's .vmx file contains the entry:

    snapshot.redoNotWithParent = "TRUE" 

Cause

The issue occurs if the following is configured:

  • VM is configured with snapshot.redoNotWithParent = "TRUE" in the .vmx configuration file
  • The .vmx file resides on a non-VVOL datastore
  • One of the VM's hard disks resides on a VVOL datastore

Resolution

'snapshot.redoNotWithParent' is not a default parameter in a VM's configuration file. It is typically added when a user wants to change the location where snapshots are stored from the VM's original working directory. Additional information can be found in Creating snapshots in a different location than default virtual machine directory for VMware ESXi and VMware ESX.

Since this is an optional configured parameter, it can be removed from the configuration file.

From the vSphere UI

  1. Power off the virtual machine.
  2. Right-click the virtual machine and click Edit Settings.
  3. Click the VM Options tab.
  4. Expand the Advanced section.
  5. For Configuration Parameters, click on EDIT CONFIGURATION.
  6. In the Name column, search for: snapshot.redoNotWithParent
  7. Delete the True value. (Note: Empty values will be removed (supported on ESXi 6.0 and later).)
  8. Click on OK.
  9. Click on OK.
  10. Take a snapshot of the VM 

    or alternatively

  11. Power on the virtual machine
  12. Take a snapshot of the VM

From Command Line

  1. SSH to the ESXi host where the VM resides
  2. Navigate to the VM's working directory where the .vmx file is located
  3. Edit the VM's .vmx using an editor such as vi
  4. Remove the line:

    snapshot.redoNotWithParent = "true"

  5. Save the changes and close the virtual machine's .vmx configuration file.
  6. Reload the virtual machine configuration by unregistering and re-registering it in the inventory or by command line:
    1. Obtain the VM's vmid

      vim-cmd vmsvc/getallvms

    2. Reload the .vmx file

      vim-cmd vmsvc/reload <vmid>

  7. Take a snapshot of the VM

    or alternatively

  8. Power on the virtual machine
  9. Take a snapshot of the VM

Additional Information