Scale up as you grow — whether you're running one virtual machine or ten thousand.

From GPU-powered inference and Kubernetes to managed databases and storage, get everything you need to build, scale, and deploy intelligent applications.

By knuxchan
I have been at this for days without any solution. I’ve been back and forth with DO support, but they have been unable to help me.
My droplet is using CentOS 7 (RHEL). In the Recovery section in my Droplet’s settings, when I try to boot from the hard drive (selecting the ‘boot from hard drive’ option), I checked my DO web console and I get this error:
error: symbol 'grub_calloc' not found.
Entering rescue mode...
grub rescue>
I’ve had a dozen browser tabs open with websites and articles, and have exhausted Google trying every suggested solution I could find. A lot of the solutions were for Ubuntu, so I was trying to find the CentOS equivalent, or just try the steps anyway and hoped they worked. I have not worked with Ubuntu as much. These are the things I’ve done:
From there I did these things that I’ve found all over the internet:
Checked my kernel by typing umame -sr
It returned:
Linux 4.15.0-23-generic
Updated/upgraded the kernel (dnf update kernel, dnf upgrade kernel)
Tried installing an older kernel
Updated/upgraded grub (Grub2 on CentOS 7)
Reinstalled Grub
Ran this command to see all of the CentOS versions that are installed on the disk:
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
These are the two entries I have:
CentOS Linux 7 Rescue [long alphanumeric string] (3.10.0-693.17.1.el7.x86
CentOS Linux (0-rescue-[long alphanumeric string]) 7 (Core)
Attempted to mount the boot partition (it’s located on /dev/vda15).
I typed:
mount /dev/vda15
I got an error:
mount: can't find /dev/vda15 in /etc/fstab
Set the Boot Default in Grub. I only had two versions to choose from (see step 6).
I typed:
grub2-set-default 0
the powered down the droplet, switched to boot from the hard disk, then powered it up again. I still got the ‘Grub Rescue’ screen. So I powered the droplet back down, switched to Recovery mode again, powered up, and tried the other boot option:
grub2-set-default 1
Rinse and repeat with the power up/down the droplet, and I still got the Grub Rescue screen.
Tried grub2-mkconfig which was a popular solution everywhere, but this was the error I kept getting when I typed that:
/usr/sbin/grub2-probe: error: failed to get canonical path of 'overlay'
I couldn’t for the life of me find that error anywhere on Google or any searches where other people had that same error. There was a similar one about it not being able to get the canonical path of ‘/cow’, but I couldn’t determine if it was the same issue I was having.
I’m at a loss of what to do. I can’t seem to get my droplet to successfully boot from the hard drive. I am able to get into my files and things when I boot through the Recovery Mode, but I don’t want to keep my droplet set on Recovery Mode forever. I have a lot of websites connected to this droplet.
Is there anything I can do to fix this? Or will I have to completely destroy the droplet and rebuild? I just don’t want to lose everything. I have databases and things that I need to preserve. I already took a snapshot of my droplet as soon as this problem happened. I am hoping to be able to fix the hard disk’s boot sector and migrate my droplet data back.
Thank you in advance for all your help!!
ebeecroft
Noor Bakkal
384d3f11289345379905a243f7b817
IsaacMvd
Ervan Agus
Teckno
dc1bce8262314f84b368813178d9e4
gerard
gerard
Stan Flint