VMware Cloud Community
Cirris
Contributor
Contributor

VM guest fails to boot with error "Device 'Bootstrap' is not available"

I have an old linux (kernel 2.2x) server that we virtualized a few years ago that I am trying to transition to an ESXi 6.0U1a server.  It was initially created with VMware Workstation version 6.  The first issue I came across was that the Virtual Hardware version needed to be upgraded.  Trying to make as little change as possible to the VM to keep it running but upgrading to something supported by our entire infrastructure, I upgraded to hardware version 7 based on this: VMware KB: ESXi/ESX hosts and compatible virtual machine hardware versions list‌.


After upgrading the virtual hardware it still worked on VMware Workstation 12.  But after moving it to the ESXi 6.0U1a server it fails to start with the error "Device 'Bootstrap' is not available".  I was unable to find any search results based on this error message.  With the VM working in workstation and as I have several ESXi servers running different versions I decided to try it on the older servers.  The VM boots fine on ESXi 4.1U3.  On ESXi 5.5U3 it fails to boot with a different error message: "Failed to start the virtual machine (error -18)".  That led me to this: VMware KB: The virtual machine fails to start with the error: msg.vmx.poweron.failedErrorCodewhich suggests looking at the VM's .vmx file.  One of the linked articles talks about deleting the .vmx file and then recreating the VM utilizing the existing disks.


I decided to attempt this route and renamed the original .vmx file, and then recreated the VM from the vSphere Client on the ESXi 6.0U1a server.  Trying to start the newly created VM results in the exact same error message I started with: "Device 'Bootstrap' is not available".  The event log on the server has an error that is probably more pertinent: "Cannot open the configuration file" (Identical error message for both .vmx files)  If I SSH into the server I am able to view/edit the .vmx file, so I am really confused at what is going on.

Any help?

Rob

9 Replies
SG1234
Enthusiast
Enthusiast

Hi -- can you please post the relevant logs from ESXi host.

0 Kudos
Cirris
Contributor
Contributor

I went to get the logs (although you didn't specify which ESXi host you would like to see them for, I mentioned three...) and couldn't see the VM in the datastore anymore (must have deleted it).  So, I uploaded it again and it appears to be working now...  wierd.

schowdhu
Contributor
Contributor

I got the same problem. I found that the  issue was because the VM was part of a cluster and parent  vcenter was in down state. some how Vm was present  on both host inventory list. While it was in power on state in one host I was trying to power on another and got above error.

I shut down the VM in one host and then tried power on on second , it works smoothly.

0 Kudos
admin
Immortal
Immortal

Schowdu touched on the resolution to this issue. The issue is caused when the Virtual Machine's vmx file is being locked by another host other than the one where it is attempting to be powered on. To identify the host holding the lock you need to SSH to the host it is currently on and run vmkfstools -D "path_to_vmx_file" and you will get an output similar to:

Lock [type 10c00001 offset 183932928 v 3418, hb offset 3952640
gen 523, mode 1, owner 56156056-3f2aa874-a755-000af75d8650 mtime 9791738
num 0 gblnum 0 gblgen 0 gblbrk 0]
Addr <4, 327, 123>, gen 3417, links 1, type reg, flags 0, uid 0, gid 0, mode 644
len 140298, nb 1 tbz 0, cow 0, newSinceEpoch 1, zla 1, bs 1048576


In bold shows the MAC address of the host holding the lock, simply check this against the MAC addresses of the network adapters attached to each host to find the host holding the lock. Remove the VM from inventory and add it back to the host holding the lock.

0 Kudos
daiichi
Contributor
Contributor

I ran into a similar problem yesterday--and after much hair pulling, finally figured it out.  Google wasn't much help.

An ESX 4 server went down, so I decided to try to move the VMs to a new server that I built on ESX 4.1.   Migration of the VMK files went fine, but imagine my surprise when I tried to start the VMs and got ""Bootstrap' is not available" every time.  Frustrated, I created a VM from scratch and tried to start it, and it too had the error.

For me, the solution was simple: the new server had an Intel motherboard, and you have to go into the BIOS and turn Intel Virtual Technology on.  The problem goes away for good.

I'm posting this here because, as I said Google wasn't much help.  So maybe this will save some tech a few hours of aggravation.

0 Kudos
javely
Contributor
Contributor

For my case:
my bootstrap occurs with the event shown below:

pastedImage_0.png

It stated its the vmx problem thus i convert the .vmx file to .ovf. using vm workstation with export to ovf fille function.
I deploy the ovf file into vsphere and reopen it, and it is able to work.

0 Kudos
zappit
Contributor
Contributor

This worked for me as I got additional errors "failed to start the virtual machine. module disk power on failed. cannot open the disk"

Quick fix. In a panic to save time, I copied the .vmdk file over to a new folder and the older, corrupted .vmx~ which was replaced with a newer .vmx version. 

With the copied 200GB .vmdk file and the previous .vmx version (now called .vmx~, which was slightly larger and older than the new one). I renamed the .vmx~ to the original name .vmx and I created a new instance from the web interface via "Register an Existing" vmguest. Not sure if this would have worked on version 5.5. In this huge mess, I upgraded to 6.0 and used the web interface in an attempt to import the corrupted image.

Booting it up, VMWare asked if the new instance was Copied or Moved. I selected "Copy". My Windows Server 2016 came up to do maintenance/repair. Then after Win2016 attempted to repair, it did so and booted fine. 

I got this idea from the previous post to copy the image to a workstation and use VMWare Workstation which I was prepared to do next.

0 Kudos
zappit
Contributor
Contributor

Note this is a stand alone ESXi 5.5 server. Troubleshooting the problem I ended up upgrading to 6.0

I got additional errors "failed to start the virtual machine. module disk power on failed. cannot open the disk"

Quick fix. In a panic to save time, I copied the .vmdk file over to a new folder and the older, corrupted .vmx~ which was replaced with a newer .vmx version. 

I copied the 200GB .vmdk file and the previous .vmx version (which was named .vmx~ and slightly larger/older than the new one) into a new folder.

I created a new instance from the web interface via "Register an Existing" vmguest. Not sure if this would have worked on version 5.5. In this huge mess since I upgraded to 6.0 and used the web interface in an attempt to import the corrupted image.

Starting the Windows Server 2016 instance it asked if I Copied or Moved it. I selected "Copy".

My Windows Server 2016 came up to do maintenance/repair within the WIndows 2016 light blue screen. Then after Win2016 attempted to repair, it did so and booted fine. 

I got this idea from the previous post to copy the image to a workstation and use VMWare Workstation which I was prepared to do next.

0 Kudos