apagou md0, md1 e não pode recriá-los

1

Anteriormente, eu tinha uma matriz RAID 1 funcional. Acho que, como resultado da execução de grub-install /dev/sdb e grub-install /dev/sdc , de alguma forma, limpei meu computador de md0 e md1 .

Eu preciso configurá-los novamente. Quando tento criar a matriz md0 , estou recebendo o seguinte erro.

/dev# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 missing -f
mdadm: device /dev/sda1 not suitable for any style of array

Parece que o Debian acha que a unidade já está em uma matriz, mas não é.

# fdisk -l

Disk /dev/sda: 250.0 GB, 250000000000 bytes
255 heads, 63 sectors/track, 30394 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000080

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       30064   241489048+  fd  Linux raid autodetect
/dev/sda2           30065       30394     2650725    5  Extended
/dev/sda5           30065       30394     2650693+  fd  Linux raid autodetect

# cat /proc/mdstat 
Personalities : [raid1] 
unused devices: <none>

EDIT: Por favor, não a saída do monte. Parece que o md0 está montado em / , mas por que não está aparecendo em proc/mdstat ?

/dev/md0 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)

cat /proc/mounts 
rootfs / rootfs rw 0 0
none /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
none /proc proc rw,nosuid,nodev,noexec,relatime 0 0
none /dev devtmpfs rw,relatime,size=4143896k,nr_inodes=204530,mode=755 0 0
none /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
/dev/sda1 / ext3 rw,relatime,errors=remount-ro,data=ordered 0 0
tmpfs /lib/init/rw tmpfs rw,nosuid,relatime,mode=755 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev,relatime 0 0

file -s /dev/sda*
/dev/sda:  x86 boot sector; GRand Unified Bootloader, stage1 version 0x3, stage2 address 0x2000, stage2 segment 0x200; partition 1: ID=0xfd, active, starthead 1, startsector 63, 482978097 sectors; partition 2: ID=0x5, starthead 254, startsector 482978160, 5301450 sectors, code offset 0x48, OEM-ID "      м", Bytes/sector 190, sectors/cluster 124, reserved sectors 191, FATs 6, root entries 185, sectors 64514 (volumes <=32 MB) , Media descriptor 0xf3, sectors/FAT 20644, heads 6, hidden sectors 309755, sectors 2147991229 (volumes > 32 MB) , physical drive 0x7e, dos < 4.0 BootSector (0x0)
/dev/sda1: Linux rev 1.0 ext3 filesystem data, UUID=38daaa54-a108-4224-9104-016d5b4ee12c (needs journal recovery) (large files)
/dev/sda2: x86 boot sector; partition 1: ID=0xfd, starthead 254, startsector 63, 5301387 sectors, extended partition table (last)1, code offset 0x0
/dev/sda5: Linux/i386 swap file (new style), version 1 (4K pages), size 662655 pages, no label, UUID=f635267e-37f8-43d0-ad01-d25969570a8f

MAIS INFORMAÇÕES: Meu array RAID de trabalho tinha md0 e md1 com drives sdb e sdc. Eu corri os comandos grub-install . Alguns dias depois, tentei reinicializá-lo e recebi o seguinte erro (que acho que corresponde a md0 )

Gave up waiting for boot device
ALERT /dev/disk/by-uuid/38[...] does not exist

então eu desconectei meu segundo e terceiro HD e o GRUB não pôde inicializar quando definido para md0, então eu configurei para dev/sda1 e esse é o estado em que minha máquina está atualmente.

mdadm --assemble --scan -v -v
mdadm: looking for devices for /dev/md0
mdadm: /dev/sda5 has wrong uuid.
mdadm: no recogniseable superblock on /dev/sda2
mdadm: /dev/sda2 has wrong uuid.
mdadm: cannot open device /dev/sda1: Device or resource busy
mdadm: /dev/sda1 has wrong uuid.
mdadm: cannot open device /dev/sda: Device or resource busy
mdadm: /dev/sda has wrong uuid.
mdadm: looking for devices for /dev/md1
mdadm: /dev/sda5 requires wrong number of drives.
mdadm: no recogniseable superblock on /dev/sda2
mdadm: /dev/sda2 has wrong uuid.
mdadm: cannot open device /dev/sda1: Device or resource busy
mdadm: /dev/sda1 has wrong uuid.
mdadm: cannot open device /dev/sda: Device or resource busy
mdadm: /dev/sda has wrong uuid.


 sfdisk -d /dev/sda
# partition table of /dev/sda
unit: sectors

/dev/sda1 : start=       63, size=482978097, Id=fd, bootable
/dev/sda2 : start=482978160, size=  5301450, Id= 5
/dev/sda3 : start=        0, size=        0, Id= 0
/dev/sda4 : start=        0, size=        0, Id= 0
/dev/sda5 : start=482978223, size=  5301387, Id=fd
    
por jaynp 24.07.2013 / 04:44

2 respostas

1

/dev/sda1 está montado. Você não poderá fazer nada enquanto estiver montado. Reinicie para um CD ao vivo.

Você pode criar um volume RAID1 a partir de um sistema de arquivos existente sem perder os dados. Ele tem que usar o formato de superbloco 0.9 ou 1.0, já que o formato padrão 1.2 precisa colocar o superbloco perto do início do dispositivo, para que o sistema de arquivos não possa ser iniciado no mesmo local. Consulte Como configurar o espelhamento de disco (RAID- 1) para um passo a passo completo.

Você precisará garantir que haja espaço suficiente para o superbloco no final do dispositivo. O superbloco está no último 64kB alinhado a 64kB do dispositivo, portanto, dependendo do tamanho do dispositivo, ele pode estar em qualquer lugar entre 64kB e 128kB antes do final do dispositivo. Execute tune2fs -l /dev/sda1 e multiplique o valor de "Contagem de blocos" pelo valor "Tamanho do bloco" para obter o tamanho do sistema de arquivos em bytes. O tamanho do dispositivo de bloco é de 241489048½ kB, então você precisa baixar o sistema de arquivos para no máximo 241488960 kB. Se for maior que isso, execute resize2fs /dev/sda1 241488960K antes de executar mdadm --create .

Um sistema de arquivos é curto o suficiente, você pode criar o dispositivo RAID1, com um formato de metadados adequado.

mdadm --create /dev/md0 --level=1 --raid-devices=2 --metadata=1.0 /dev/sda1 missing
    
por 25.07.2013 / 03:54
0

Você precisa falhar no dispositivo e removê-lo antes de poder adicioná-lo a outro RAID.

$ mdadm /dev/md0 -f /dev/sda1
$ mdadm /dev/md0 -r /dev/sda1

Você também pode usar este comando para ver a configuração atual do RAID:

$ mdadm --detail /dev/md0
/dev/md0:
        Version : 0.90
  Creation Time : Wed Dec 16 22:55:51 2009
     Raid Level : raid1
     Array Size : 2930266432 (2794.52 GiB 3000.59 GB)
  Used Dev Size : -1
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Wed Jul 24 02:05:22 2013
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 2d2c47de:dd4d678f:6a89fc71:2e8f3e64
         Events : 0.23916

    Number   Major   Minor   RaidDevice State
       0       8       33        0      active sync   /dev/sdc1
       1       8       17        1      active sync   /dev/sdb1
    
por 24.07.2013 / 08:04