Solução de Problemas do Unbreakable Enterprise Kernel
Se você estiver tendo problemas com o UEK (Unbreakable Enterprise Kernel) em instâncias do Oracle Linux no Oracle Cloud Infrastructure, revise as informações a seguir.
Consulte também: Problemas Conhecidos do Unbreakable Enterprise Kernel.
Falha na inicialização da instância após a atualização para uma nova versão do kernel
Quando você atualiza para o kernel UEK Release 7 mais recente, o log da console mostra o seguinte erro:
error: ../../grub-core/fs/fshelp.c:258:file `/initramfs-5.15.0-206.153.7.el8uek.x86_64.img' not found.
Este erro ocorre porque não havia espaço suficiente em /boot
quando o kernel foi instalado, o arquivo initramfs
não foi criado ou não foi criado corretamente. Você pode tentar inicializar em um kernel anterior, verificar erros na configuração do carregador de inicialização (como o GRUB) e verificar a integridade da imagem initramfs
.
Para solucionar problemas, recrie a imagem initramfs
, remova kernels não utilizados para liberar espaço no diretório /boot
ou faça os dois.
Recriar a imagem initramfs
Siga as etapas abaixo para recriar a imagem initramfs
.
- Em uma linha de comando, usando privilégios administrativos, estabeleça conexão com a instância usando SSH.
- Verifique se o arquivo
initramfs
do kernel que não será inicializado existe executandols -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
Dica
Você pode identificar os kernels do Oracle Linux peloel8uek
no nome da imageminitramfs
:/boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
- Faça backup da imagem
initramfs
do kernel atualizado copiando-a para um diretório diferente de/boot
. Por exemplo, para copiar/boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
para o diretório/root
, execute:sudo cp /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img /root
- Recrie a imagem
initramfs
para o kernel atualizado, por exemplo:sudo dracut --kver 5.15.0-305.176.4.el8uek.x86_64 --force
- Verifique se o
initramfs
foi recriado, por exemplo:sudo ls -l /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
Observe a alteração de data:
-rw-------. 1 root root 90117038 Apr 2 23:51 /boot/initramfs-5.15.0-305.176.4.el8uek.x86_64.img
- Reinicialize a instância para verificar se a instância agora pode ser inicializada com o kernel atualizado.
Remover kernel não utilizado
Siga as etapas abaixo para liberar espaço de inicialização removendo kernels não utilizados.
- Em uma linha de comando, usando privilégios administrativos, estabeleça conexão com a instância usando SSH.
- Limpe o sistema de arquivos
/boot
removendo kernels antigos ou indesejados. Por exemplo, se você não precisar mais do Red Hat Compatible Kernels (RHCK), ele poderá ser removido, liberando o espaço/boot
.- Verifique o espaço disponível em
/boot
.df -h /boot
Filesystem Size Used Avail Use% Mounted on /dev/sda2 1014M 1006M 8.7M 100% /boot
- Procure os RHCKs.
sudo rpm -qa | grep kernel-core
kernel-core-4.18.0-553.40.1.el8_10.x86_64
- Remova os RHCKs indesejados.
sudo dnf remove -y kernel-core-4.18.0-553.40.1.el8_10.x86_64
- Verifique o espaço disponível em
- Verifique novamente o espaço disponível em
/boot
.df -h /boot
Filesystem Size Used Avail Use% Mounted on /dev/sdb2 1014M 782M 233M 78% /boot
- Reinicialize a instância para verificar se a instância agora pode ser inicializada com o kernel atualizado.