openSuse 42.2 não consegue inicializar quando o root está no RAID1 que está quebrado (com um disco ausente / novo / vazio)

0

Aqui é o caso:

Eu tenho dois discos configurados no RAID 1 da seguinte forma:

  • /dev/md0 ( /dev/sda1 + /dev/sdb1 ) → /boot
  • /dev/md1 ( /dev/sda2 + /dev/sdb2 ) → /

Meu cenário:

  1. Iniciar servidor com RAID 1 e matriz totalmente sincronizada
  2. Encerre meu servidor normalmente
  3. Remover um dos discos ( /dev/sdb )
  4. Tente inicializar novamente com apenas um disco

Meu cenário está funcionando bem no openSuse 11.3 → 42.1

No openSuse 42.2, quando eu tento inicializar apenas com um disco, o GRUB carrega bem (embora também localizado em uma matriz), mas depois espera para sempre o dispositivo raiz ( /dev/md1 ). Eu esperaria que ele quebrasse a matriz e continuasse.

Eu testei com a nova instalação do 42.2 do DVD (com e sem zypper update), assim como o upgrade de distro on-line do 42.1. Mesmo problema em todos os cenários.

Se o array já estava quebrado antes do desligamento, ele inicializa bem (com array quebrado).

Eu também testei a especificação de dispositivos RAID na linha de comando: linux .... root=/dev/md1 md=1 /dev/sda2,/dev/sdb2 (veja a figura), mas isso não ajudou.

As capturas de tela estão disponíveis no meu ticket aberto no openSuse Bugzilla: link

Conseguir isso resolvido é crítico para mim já que eu já tive vários problemas em sites de clientes onde o "desligamento forçado" (falha elétrica na bateria, comum na América Central) danifica um disco, levando a um cenário similar ao descrito acima. Eu não posso atualizar para o openSuse 42.2 se eu não puder corrigir esse problema de alguma forma.

Por favor, note que o carregador de boot (GRUB2) não parece ser o problema, já que eu posso inicializar em qualquer disco e o GRUB sempre carrega corretamente (embora /boot também esteja em uma partição RAID 1). O problema é mais tarde, ao montar o sistema de arquivos raiz. Possivelmente um problema com o script dracut-pre-mount ?

Todas as ideias são bem-vindas ...

    
por Cedric Simon 02.01.2017 / 00:32

1 resposta

0

Na verdade, é confirmado como um bug do openSuse. Um arquivo de configuração dracut está faltando ...

A solução alternativa é descrita aqui: link

    
por 02.01.2017 / 01:24