El arranque de CentOS 6.10 se detiene en el indicador de GRUB

El arranque de CentOS 6.10 se detiene en el indicador de GRUB

Mi host CentOS 6.10 no arranca. Se detiene en el indicador de GRUB. ¿Cómo soluciono este problema sin intervención manual en cada arranque?

Puedo hacer que el sistema funcione correctamente con estos pasos.

root (hd0,1) 
kernel /vmlinuz<version> root=/dev/sda8 ro 
initrd initramfs<version matching kernel line> 
boot

A partir de ahí todo es normal, hasta que tengo que reiniciar. uname -amuestra la versión que utilicé para abrir manualmente el sistema. (Sí, el nombre de host es hastur).

$ uname -a
Linux hastur 2.6.32-754.9.1.el6.x86_64 #1 SMP Thu Dec 6 08:02:15 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Mi disco está diseñado así:

$ lsblk -i
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 232.9G  0 disk 
|-sda1   8:1    0   200M  0 part /boot/efi
|-sda2   8:2    0   500M  0 part /boot
|-sda3   8:3    0  73.2G  0 part /var
|-sda4   8:4    0  48.8G  0 part /home
|-sda5   8:5    0  29.3G  0 part /opt
|-sda6   8:6    0  14.7G  0 part /tmp
|-sda7   8:7    0   7.8G  0 part [SWAP]
`-sda8   8:8    0  58.4G  0 part /
sr0     11:0    1  1024M  0 rom  

Estas son las entradas relevantes en /etc/fstab. (Verifiqué ese UUID corto para /boot/efi usandoblkid /dev/sda1)

UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 /      ext4  defaults   1 1
UUID=bbec4552-4895-4ad9-a82a-e3668a9b8e4b /boot  ext4  defaults   1 2
UUID=8067-187B     /boot/efi   vfat    umask=0077,shortname=winnt 0 0

Mi grub.conf es

$ sudo cat /boot/efi/EFI/redhat/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,1)
#          kernel /vmlinuz-version ro root=/dev/sdb8
#          initrd /initrd-[generic-]version.img
#boot=/dev/sdb1
device (hd0) HD(1,800,64000,6c514bde-63d4-4e1f-9306-7792c17f1e90)
default=0
timeout=5
splashimage=(hd0,1)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-754.11.1.el6.x86_64)
    root (hd0,1)
    kernel /vmlinuz-2.6.32-754.11.1.el6.x86_64 ro root=UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=256M
    initrd /initramfs-2.6.32-754.11.1.el6.x86_64.img
title CentOS (2.6.32-754.11.1.el6.x86_64.debug)
    root (hd0,1)
    kernel /vmlinuz-2.6.32-754.11.1.el6.x86_64.debug ro root=UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=256M
    initrd /initramfs-2.6.32-754.11.1.el6.x86_64.debug.img
title CentOS (2.6.32-754.9.1.el6.x86_64.debug)
    root (hd0,1)
    kernel /vmlinuz-2.6.32-754.9.1.el6.x86_64.debug ro root=UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=256M
    initrd /initramfs-2.6.32-754.9.1.el6.x86_64.debug.img
title CentOS (2.6.32-754.9.1.el6.x86_64)
    root (hd0,1)
    kernel /vmlinuz-2.6.32-754.9.1.el6.x86_64 ro root=UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=256M
    initrd /initramfs-2.6.32-754.9.1.el6.x86_64.img
title CentOS (2.6.32-754.6.3.el6.x86_64)
    root (hd0,1)
    kernel /vmlinuz-2.6.32-754.6.3.el6.x86_64 ro root=UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=256M
    initrd /initramfs-2.6.32-754.6.3.el6.x86_64.img
title CentOS (2.6.32-754.3.5.el6.x86_64)
    root (hd0,1)
    kernel /vmlinuz-2.6.32-754.3.5.el6.x86_64 ro root=UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=256M
    initrd /initramfs-2.6.32-754.3.5.el6.x86_64.img
title CentOS (2.6.32-696.30.1.el6.x86_64)
    root (hd0,1)
    kernel /vmlinuz-2.6.32-696.30.1.el6.x86_64 ro root=UUID=c7ba8070-e409-4a58-b31b-ddd06d784481 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=256M
    initrd /initramfs-2.6.32-696.30.1.el6.x86_64.img

Información relacionada

Tuve el mismo problema con Ubuntu 18.04 (tanto la actualización desde 16.04 como la instalación nueva. El mismo hardware en ambos hosts: HP Compaq 8200 Elite Small Form Factor, Intel Core i5-2500). Ubuntu 16.04 arrancó bien, Ubuntu 18.04 no. El problema eraresueltola semana pasada con estos comandos.

sudo apt-get purge grub\*
sudo apt-get install grub-efi
sudo apt-get autoremove
sudo update-grub

Este error se mostraría en cadaactualización adecuada:

Package grub-efi-amd64-signed is not configured yet.

dpkg informó:

iF grub-efi-amd64-signed (1.93.13+2.02-2ubuntu8.12)
iU shim-signed (1.37~18.04.3+15+1533136590.3beb971-0ubuntu1)

Volver al host CentOS 6

sudo rpm -VaMe dirás esto.

.M.......    /boot/efi/EFI/redhat
.M.....T.    /boot/efi/EFI/redhat/grub.efi

Ya intenté arrancar desde un medio óptico y ejecutarinstalación de grub. En este momento, reconstruir desde cero no es una opción.

información adicional

$ sudo efibootmgr
Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.
Try 'modprobe efivars' as root.

# modprobe efivars
FATAL: Module efivars not found.


# ls -li $(locate grub.conf)
  9 -rwx------. 1 root root 3626 May 25 09:31 /boot/efi/EFI/redhat/grub.conf
  2885960 lrwxrwxrwx. 1 root root   32 Apr 21  2018 /etc/grub.conf -> ../boot/efi/EFI/redhat/grub.conf
  2885959 lrwxrwxrwx. 1 root root   33 Apr 21  2018 /etc/grub.conf.rpmsave -> ..//boot/efi/EFI/redhat/grub.conf

# diff -wb /etc/grub.conf /etc/grub.conf.rpmsave
#

Respuesta1

Encontré algo de tiempo para trabajar en esto nuevamente y lo resolví.

La pista que finalmente me llamó la atención fue grub.conf: "los caminos son relativos a /boot/"

# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,1)
#          kernel /vmlinuz-version ro root=/dev/sdb8
#          initrd /initrd-[generic-]version.img

Mi archivo grub.conf estaba en el lugar equivocado /etc/grub.conf. Copié el archivo /boot/grub/y el sistema arrancó normalmente.

Volviendo a mi pregunta, no estoy del todo seguro de cómo ejecuté. sudo cat /boot/efi/EFI/redhat/grub.conf Eso es evidente en uno de mis comentarios que locate grub.confsolo pudo encontrar un archivo en/etc

información relacionada