Novo RAID mdadm desaparece após a reinicialização

0

Eu tenho problemas com o mdadm após a reinicialização, não consigo remontar /dev/md0 .

Eu trabalho no debian wheezy.

Eu fiz os seguintes passos ::

sudo mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sd[b-e]
cat /proc/mdstat
sudo mdadm --readwrite /dev/md0
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf
echo check > /sys/block/md0/md/sync_action
sudo pvcreate /dev/md0
sudo pvdisplay
sudo vgcreate vgraid6 /dev/md0
sudo lvcreate -l 100%FREE -n lvHD vgraid6
sudo mkfs.ext4 -v /dev/vgraid6/lvHD

Aqui tudo funciona com sucesso.

Após montar o RAID, eu poderia usá-lo, criar arquivos, acessá-lo de outros PCs ...

Agora vem o problema:

Após reiniciar o servidor (reinicializar agora), o RAID não existe mais, /dev/md0 desapareceu.

Primeiro, verifiquei /etc/mdadm/mdadm.conf :

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
#DEVICE partitions containers
...
CREATE owner=root group=disk mode=0660 auto=yes
MAILADDR root
ARRAY /dev/md0 metadata=1.2 name=media:0 UUID=cb127a0b:ad4eb61d:e0ba8f82:db4b062d

Depois de tentar:

$ mdadm --stop --scan
$ mdadm --assemble --scan

ou:

$ sudo  mdadm --assemble /dev/md0 /dev/sd[b-e]
    mdadm: Cannot assemble mbr metadata on /dev/sdb
    mdadm: /dev/sdb has no superblock - assembly aborted


$ sudo  mdadm --examine /dev/sd[b-e]
/dev/sdb:
   MBR Magic : aa55
Partition[0] :   4294967295 sectors at            1 (type ee)
/dev/sdc:
   MBR Magic : aa55
Partition[0] :   4294967295 sectors at            1 (type ee)
/dev/sdd:
   MBR Magic : aa55
Partition[0] :   4294967295 sectors at            1 (type ee)
/dev/sde:
   MBR Magic : aa55
Partition[0] :   4294967295 sectors at            1 (type ee)

O daemon mdadm está em execução ( ps aux | grep mdadm )

vazio / proc / mdstat

$ cat /proc/mdstat
Personalities :
unused devices: <none>

O que há de errado?

    
por peon 23.08.2014 / 01:37

2 respostas

12

O motivo é duplo:

  • Seu (novo) mdadm.conf não está sendo lido no momento em que os arrays são montados.

    Isso ocorre porque isso acontece antes de o sistema de arquivos raiz ser montado (obviamente: você precisa ter um dispositivo RAID em funcionamento para acessá-lo), portanto, esse arquivo está sendo lido da imagem initramfs contendo o ambiente pré-inicialização .

    Para que isso funcione, depois de atualizar a configuração, execute

    # update-initramfs -u
    

    para atualizar o initramfs.

  • Seu dispositivo RAID não está sendo descoberto e montado automaticamente na inicialização.

    Para isso, altere os tipos de partições membro para 0xfd (autodetectação RAID do Linux) - para tabelas de partições no estilo MBR ou para 00FD (mesmo) para GPT. Você pode usar fdisk ou gdisk , respectivamente, para fazer isso.

    mdadm é executado na inicialização (fora do initramfs), varre as partições disponíveis, lê os blocos de metadados de todos eles com o tipo 0xfd e monta e inicia todos os dispositivos RAID que ele é capaz. Isso não exige uma cópia de um mdadm.conf atualizado na imagem do initramfs.

Qual método preferir, depende de você. Eu, pessoalmente, como o segundo, mas se você tiver vários (muitos) dispositivos RAID e só quiser iniciar vários deles na inicialização (necessário para ter um sistema de arquivos raiz) e ativar o restante mais tarde, a primeira abordagem ou uma combinação deles é um caminho a percorrer.

    
por 26.08.2014 / 15:03
0

Obrigado pela sua resposta.

Eu já tentei atualizar o initranfd, mas sem sucesso.

Com sua segunda dica, corrijo o problema:

crie uma partição em cada disco usando:

gdisk /dev/sd[b-e] \n \ \fd00\w\y

crie o mdadm na partição no dispositivo (marque 1 no final)

sudo mdadm --create --verbose /dev/md0 --level=6 --assume-clean --raid-devices=4 /dev/sd[b-e]1
    
por 26.08.2014 / 20:51