Virtual machine operations fail with the error: The specified device is not a valid physical disk device
search cancel

Virtual machine operations fail with the error: The specified device is not a valid physical disk device

book

Article ID: 318852

calendar_today

Updated On:

Products

VMware vCenter Server VMware vSphere ESXi

Issue/Introduction

Symptoms:
  • Powering on a virtual machine fails.
  • You see the error:

    An error was received from the ESX host while powering on VM virtual_machine.
    Failed to start the virtual machine.
    Module Disk power on failed.
    Cannot open the disk '/vmfs/volumes/virtual_machine_datastore/virtual_machine_folder/virtual_machine.vmdk' or one of the snapshot disks it depends on.
    The specified device is not a valid physical disk device
  • vMotion of a virtual machine fails at 73%.
  • You see the error:

    General system error occurred - Failed to resume. A general system error occurred: Source detected that destination failed to resume.
     
  • In the /vmfs/volumes/vm_datastore/vm_folder/vmware.log, you see entries similar to:

    vmx| I120: DISKLIB-LIB_MISC : DiskLibIsExtentPathSecure: Extent path "/vmfs/volumes/virtual_machine_datastore/virtual_machine_folder/virtual_machine-flat.vmdk" points to within the scratch directory "/vmfs/volumes/51c23edc-66823826-3149-d89d671440d4", rejecting as insecure.


Environment

VMware vSphere ESXi 6.5
VMware vSphere ESXi 6.0
VMware vCenter Server Appliance 6.5.x
VMware vCenter Server Appliance 6.0.x
VMware vCenter Server 6.5.x
VMware vCenter Server Appliance 6.7.x
VMware vSphere ESXi 7.0.0
VMware vSphere ESXi 6.7
VMware vCenter Server 6.0.x
VMware vCenter Server 6.7.x
VMware vCenter Server 7.0.x

Cause

The error The specified device is not a valid physical disk device is caused when you have configured the ScratchConfig.ConfiguredScratchLocation setting to point to the base of your ESXi host's local storage and you have virtual machines running on the same local storage. This also occurs when you have the scratch partition on the base of the local storage and have put virtual machines in a sub-directory under the configured scratch partition. This is not supported with ESXi and any such virtual machine vmdk's are marked as insecure.

Note: This issue can occur on NFS storage where the scratch directory is the base directory of the datastore, and in the same directory as virtual machines directories, or virtual machine directories are in a subdirectory of the directory containing the scratch directory.

Resolution

To resolve the The specified device is not a valid physical disk device error, configure the scratch location parameter to point to a directory on the ESXi host that is a subfolder of the local datastore.  For more information on the scratch partition, see About the Scratch Partition .

Note: The scratch directory and the virtual machine directories must be in separate subdirectory trees, and the scratch directory must never be defined as the base of a datastore which contains virtual machines.
  1. In the ESXi host Advanced Settings, set the ScratchConfig.ConfiguredScratchLocation location. For more information, see Configure Advanced Settings.
 
For Example:
Set ScratchConfig.ConfiguredScratchLocation to /vmfs/volumes/datastore1/scratch instead of /vmfs/volumes/datastore1.

Note: This issue can also occur if an ESXi host has an empty setting in ScratchConfig.ConfiguredScratchLocation.

For more information on configuring the persistent scratch partition, see Creating a persistent scratch location for ESXi 4.x/5.x/6.0 (1033696).

  1. If this fix fails to resolve the issue, verify that the datastore is not having i/o errors, or other severe errors. If you do see such errors, migrate, restore or rebuild the VM to a healthier datastore.


Additional Information