The problem is the linux
and initrd
command used in /boot/efi/EFI/centos/grub.cfg
is not found in your centos (or any default boot OS).
You must replace the linux
to linuxefi
and initrd
to initrdefi
inside the grub.cfg file.So follow this operatins:
1 - boot to your centos terminal
2 - install grub2-efi
# yum install grub2-efi
4 - open the /boot/efi/EFI/centos/grub.cfg
using a text editor.
# vi /boot/efi/EFI/centos/grub.cfg
note: if grub.cfg did not exist try to /boot/grub2/grub.cfg
... if was not exist too, try to generate that: # grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
5 - find all linux
command and replace to linuxefi. So, find all initrd command and replace to initrdefi
befor edit saples
linux /boot/vmlinuz-0-rescue-d1268bb1d6df49758a1ec5715984725c
root=/dev/sda1
initrd
/boot/initramfs-0-rescue-d1268bb1d6df49758a1ec5715984725c.img
after edit sample :
linuxefi /boot/vmlinuz-0-rescue-d1268bb1d6df49758a1ec5715984725c
root=/dev/sda1
initrdefi
/boot/initramfs-0-rescue-d1268bb1d6df49758a1ec5715984725c.img
6 - reboot
linuxefi
andinitrdefi
keywords instead of plainlinux
andinitrd
.