During the migration from trial to paid user, I lost my running instance with similar symptoms. However, and in my case, the "flag" auto-delete the disk when deleting the instance was checked which was preventing me from using the method described above. So here's how I was able to recover my drive:
First and foremost, do not delete your corrupted instance. You will need it.
- From your main console,identify the name of the disk corresponding to the corrupted instance: "gcloud compute disks list"
- Create a snapshot of the drive that seems corrupted: gcloud compute disks snapshot my-disk-1 --snapshot-names snapshot-1
- Create and boot an instance from the newly created snapshot (make sure to turn off the auto-delete flag when creating the new instance). Chances are, the newly created instance will run into the exact same boot issue as the original one. That's okay this time, because you will now be able to shutdown and delete that instance without losing the drive which should now be available when listing with gcloud compute disks list (say: new_disk).
- Once the instance has been deleted, you should be left with one new mountable drive. For that, create a 3rd instance with similar OS characteristics as the original one.
- From the Google Cloud console, and using gcloud command, attach the drive to that new instance (say ubuntu-trusty-3). gcloud compute instance attach-disk ubuntu-trusty-3 --disk DISK --device-name new_disk You should now have 2 drives available on that instance.
$ sudo blkid
/dev/sda1: LABEL="cloudimg-rootfs" UUID="87f65d22-c9a9-428c-b1ab-b4ad9f8e4c05" TYPE="ext4"
/dev/sdb1: LABEL="cloudimg-rootfs" UUID="87f65d22-c9a9-428c-b1ab-b4ad9f8e4c05" TYPE="ext4"
- Reboot that instance if the drive does not show up (sudo blkid).
Here's how it looked on my:
In my case, to my biggest surprise the kernel booted from the recovered drive (gmap-server) and I was back in business. I have no idea how the kernel picked this one versus the one created at the creation of the instance. If anyone knows, please chime in here.