Resolución de problemas de Unbreakable Enterprise Kernel
Si tiene problemas con Unbreakable Enterprise Kernel (UEK) en instancias de Oracle Linux en Oracle Cloud Infrastructure, revise la siguiente información.
Consulte también: Unbreakable Enterprise Kernel Known Issues.
La instancia no se puede iniciar después de actualizar a una nueva versión del núcleo
Al actualizar al núcleo UEK versión 7 más reciente, el log de la consola muestra el siguiente error:
error: ../../grub-core/fs/fshelp.c:258:file `/initramfs-5.15.0-206.153.7.el8uek.x86_64.img' not found.
Este error se produce porque no había suficiente espacio en /boot
cuando se instaló el núcleo, el archivo initramfs
no se creó o no se creó correctamente. Puede intentar iniciar en un núcleo anterior, comprobar si hay errores en la configuración del cargador de inicio (como GRUB) y verificar la integridad de la imagen initramfs
.
Para solucionar problemas, vuelva a crear la imagen initramfs
, elimine los núcleos no utilizados para liberar espacio en el directorio /boot
o realice ambas acciones.
Volver a crear la imagen initramfs
Siga los pasos que se indican a continuación para volver a crear la imagen initramfs
.
- Desde una línea de comandos, mediante privilegios administrativos, conéctese a la instancia mediante SSH.
- Compruebe si existe el archivo
initramfs
para el núcleo que no se iniciará ejecutandols -l /boot/initramfs-*.img
.ls -l /boot/initramfs-*.img
-rw-------. 1 root root 90917795 Feb 12 19:33 /boot/initramfs-0-rescue-7063910fe2979258f8fd66f2fb8b8567.img -rw-------. 1 root root 76584495 Mar 24 14:40 /boot/initramfs-4.18.0-553.40.1.el8_10.x86_64.img -rw-------. 1 root root 90117038 Mar 24 23:51 /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img -rw-------. 1 root root 35099136 Mar 24 14:57 /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64kdump.img
Consejo
Puede identificar los núcleos de Oracle Linux porel8uek
en el nombre de imageninitramfs
:/boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
- Realice una copia de seguridad de la imagen
initramfs
para el núcleo actualizado copiándola en un directorio distinto de/boot
. Por ejemplo, para copiar/boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
en el directorio/root
, ejecute:sudo cp /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img /root
- Vuelva a crear la imagen
initramfs
para el núcleo actualizado, por ejemplo:sudo dracut --kver 5.15.0-305.176.4.el8uek.x86_64 --force
- Compruebe que se ha vuelto a crear
initramfs
, por ejemplo:sudo ls -l /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
Observe el cambio de fecha:
-rw-------. 1 root root 90117038 Apr 2 23:51 /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
- Reinicie la instancia para verificar que la instancia ahora se puede iniciar con el núcleo actualizado.
Eliminar núcleos no utilizados
Siga los pasos que se indican a continuación para liberar espacio de inicio mediante la eliminación de núcleos no utilizados.
- Desde una línea de comandos, mediante privilegios administrativos, conéctese a la instancia mediante SSH.
- Limpie el sistema de archivos
/boot
eliminando los núcleos antiguos o no deseados. Por ejemplo, si ya no necesita núcleos compatibles con Red Hat (RHCK), se pueden eliminar liberando espacio/boot
.- Compruebe el espacio disponible en
/boot
.df -h /boot
Filesystem Size Used Avail Use% Mounted on /dev/sda2 1014M 1006M 8.7M 100% /boot
- Busque los RHCK.
sudo rpm -qa | grep kernel-core
kernel-core-4.18.0-553.40.1.el8_10.x86_64
- Retire los RHCK no deseados.
sudo dnf remove -y kernel-core-4.18.0-553.40.1.el8_10.x86_64
- Compruebe el espacio disponible en
- Vuelva a comprobar el espacio disponible en
/boot
.df -h /boot
Filesystem Size Used Avail Use% Mounted on /dev/sdb2 1014M 782M 233M 78% /boot
- Reinicie la instancia para verificar que la instancia ahora se puede iniciar con el núcleo actualizado.