Para corrigir um sistema SLES15 não inicializável, inicializei a imagem do Rescue, montei o sistema existente em /mnt
, e depois fiz chroot /mnt
(estou deixando de fora os detalhes, pois provavelmente são conhecidos (ou encontrados em Como você cria um ambiente chroot para OpenSUSE Leap ? )).
Ao tentar reconstruir o initrd usando dracut
existe o problema de que o kernel que está sendo usado no sistema de resgate não corresponde ao kernel encontrado no chroot
ambiente.
Por exemplo, a saída é:
dracut: cannot find module directory /lib/modules/5.3.18.57-default
( 5.3.18.57-default
é o kernel do sistema de recuperação; o kernel que não inicializa é 5.3.18-150300.59.46-default
por exemplo)
Não tenho certeza de qual será a sintaxe correta; eu tenho que especificar o caminho completo para o initrd e o kernel e, em caso afirmativo, a variante "vmlinuz" ou a variante "vmlinux.gz"?
Para apenas recriar o initrd, primeiro descubra o(s) kernel(s) instalado(s), usando
Por exemplo, a saída pode ser:
Como alternativa, você pode querer listar
/lib/modules
as versões do kernel. O resultado pode ser:Em seguida, execute o comando com um primeiro parâmetro vazio e a versão do kernel como segundo parâmetro, assim (observe as alterações em comparação com a saída RPM):