En Ubuntu (y supongo que también en Debian) hay un script de sistema llamado update-grubque se ejecuta automáticamente grub-mkconfig -ocon la ruta correcta para el archivo de configuración de grub.
¿Existe algún comando similar para las distribuciones basadas en Red Hat?
Si no, ¿cómo sabe el sistema dónde está el archivo de configuración de grub para actualizar cuando se instala una nueva versión del kernel?

/bin/kernel-installlugar. Edite su respuesta para incluir esta información para referencia futuraDespués de analizar los scripts en Fedora, me doy cuenta de que la ruta del archivo de configuración se lee desde el enlace simbólico
/etc/grub2.conf. Lagrub2-mkconfiglínea correcta es así:Como se señaló en los comentarios, puede ser
/etc/grub2.cfg, o/etc/grub2-efi.cfgen un sistema UEFI. En realidad, ambos enlaces pueden estar presentes al mismo tiempo y apuntando a diferentes ubicaciones . El-eindicador dereadlinkerror aparecerá si el archivo de destino no existe, pero en mi sistema ambos existían ... Supongo que compruebe sus comandos.fuente
/etc/grub2.cfgsudo grub2-mkconfig -o "$(readlink /etc/grub2-efi.cfg)"En Fedora uso:
porque la ejecución sin opción de
readlinkdevuelve una ruta relativa ygrub2-mkconfigda un error:Utilizo la
-eopción para que si el enlace simbólico no se resuelve en un archivo que existe, la salida se muestra en stdout para que sepa que algo salió mal.Desde la página del manual para readlink:
fuente
En Fedora, el enlace simbólico /etc/grub2.cfg apunta a la versión del BIOS. En un sistema UEFI, use:
En CentOS:
En general, podría usar en su lugar:
Ver https://docs.fedoraproject.org/f27/system-administrators-guide/kernel-module-driver-configuration/Working_with_the_GRUB_2_Boot_Loader.html#sec-Editing_a_Menu_Entry
fuente
edite el archivo grub con
viovim, guarde los cambios y cierre el editor con: wq!Esto es lo que necesita ejecutar para actualizar grub en RedHat o CentOS:
fuente
El
update-grubscript en Ubuntu es en realidad solo un trozogrub-mkconfig, y se puede adaptar a otras distribuciones sin demasiado dolor. Aquí está en su totalidad:Esto hace de manera efectiva lo que se recomienda en el CentOS wiki , y en otras respuestas aquí - la única diferencia es que se necesita un cambio
grubdegrub2en el comando y la ruta de salida.fuente