CentOS7 Comando dracut lvm não encontrado

1

Eu atualizei o kernel CentOS7 por causa do problema de Meltdown de 3.10.0-693.11.1 para 3.10.0-693.11.6, mas depois dessa atualização, eu não consigo inicializar como centos drop para o dracut com erro

warning /dev/mapper/centos-root does not exist

dracut:/# ls /dev/mapper/
control
dracut:/# 

Parece que meu initrd está configurado incorretamente, ainda posso inicializar 3.10.0-693.11.1 sem nenhum problema. Eu estou tentando depurar isso (existem muitos recursos on-line), mas parece que estou faltando alguma coisa fundamentalmente aqui, pois não posso executar o comando lvm

dracut:/# lvm scan
sh: lvm: command not found
dracut:/# ls /etc/lvm/lvm.conf
ls: cannot access /etc/lvm/lvm.conf: No file or dictionary
dracut:/# ls /etc/lvm
ls: cannot access /etc/lvm: No file or dictionary

Eu vi que normalmente o problema com ferramentas é causado pela falta de binários em / sbin, então eu coloquei o kernel stabile e verifiquei:

root@localhost ~# ls /sbin/lvm
/sbin/lvm
root@localhost ~# which lvm
/sbin/lvm

Então binário está no lugar correto, mas por alguma razão o dracut não está vendo dentro / sbin.

Minha configuração do grub para 3.10.0-693.11.1 e 3.10.0-693.11.6 é quase idêntica

#: after update kernel params
linux16 /vmlinuz-3.10.0-693.11.6.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=128M rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rdshell 
#: before update kernel params
linux16 /vmlinuz-3.10.0-693.11.1.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=128M rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rdshell

Aqui eu lutei um pouco: eu passei pela man page do dracut e há muitas opções para o LVM, eu pressume que a autodiscovery não está funcionando, mas por que ele funciona para o kernel anterior e o mais recente tem um problema? Além disso, como posso obter ferramentas lvm de trabalho no initram, para depurá-lo ainda mais?

Obrigado por qualquer conselho!

ATUALIZAÇÃO: Executando lsinitrd -m -k mostra que não há módulo lvm dentro do ramdisk

========================================================================
Image: /boot/initramfs-3.10.0-693.11.6.el7.x86_64.img: 18M
========================================================================
Early CPIO image
========================================================================
drwxr-xr-x   3 root     root            0 Jan 22 11:15 .
-rw-r--r--   1 root     root            2 Jan 22 11:15 early_cpio
drwxr-xr-x   3 root     root            0 Jan 22 11:15 kernel
drwxr-xr-x   3 root     root            0 Jan 22 11:15 kernel/x86
drwxr-xr-x   2 root     root            0 Jan 22 11:15 kernel/x86    /microcode
-rw-r--r--   1 root     root        24576 Jan 22 11:15 kernel/x86    /microcode/GenuineIntel.bin
========================================================================
Version: dracut-033-502.el7

dracut modules:
bash
nss-softokn
i18n
network
ifcfg
drm
plymouth
kernel-modules
qemu
resume
rootfs-block
terminfo
udev-rules
biosdevname
systemd
usrmount
base
fs-lib
shutdown
========================================================================

Eu estava tentando adicionar o driver do kernel lvm para a imagem initram, mas infelizmente isso falhou sem nenhum problema visível:

dracut --add-drivers  lvm /boot/initramfs-3.10.0-693.11.6.el7.x86_64.img

dracut[27939]: Failed to install module lvm

adicionando -v não aponta para nada útil.

    
por user979291 23.01.2018 / 16:50

1 resposta

1

Eu tive esse problema. Eu consertei por:

fazendo login em um live cd (a recuperação também deve estar boa)

cp /etc/dracut.conf /etc/dracut.conf.bak

nano /etc/dracut.conf

Alterando as seguintes linhas para:

# dracut modules to add to the default
add_dracutmodules+="lvm"

# install local /etc/mdadm.conf
mdadmconf="yes"

# install local /etc/lvm/lvm.conf
lvmconf="yes"

(Você provavelmente não precisará do mdadmconf, eu adicionei como eu fiz Raid.)

Execute novamente dracut -f para meu kernel. Reinicie.

Isso me fez passar na edição lvm. Agora tenho problemas sysroot não montagem (me cai em um shell de recuperação). Vou atualizar quando for corrigido.

    
por 30.03.2018 / 01:14