Eu reinstalei o ubuntu e agora não vejo meu drive RAID

0

Eu originalmente tinha um sistema Ubuntu 12.04 com matriz RAID5 que eu construí usando o mdadm.

Devido a problemas com drivers gráficos, o sistema 12.04 travou e tive que reinstalar o sistema operacional. Depois de várias tentativas de instalação / reinstalação (e tente usar o reparo de inicialização a partir de um LiveCD). Eu finalmente recuperei meu sistema rodando o Ubuntu-Gnome 14.04. Mas agora meu ataque foi embora.

Temo que algo tenha acontecido quando usei o reparo de inicialização. Eu continuei recebendo mensagens dizendo: Raid Detected você deve instalar o mdadm (em que ponto eu fiz), e então ele perguntou sobre algum outro programa md e disse que eu deveria remover isso porque causava problemas com o mdadm ou algo assim. Também durante o calvário gparted gritou comigo várias vezes sobre uma Tabela de Partição GUUID corrompida em uma das unidades.

Eu posso verificar com o gparted que as 3 unidades que usei para fazer meu RAID5 ainda estão lá e ainda estão formatadas com o sistema de arquivos ext4.

Para os três discos, a saída de

sudo sgdisk -p /dev/sdb
sudo sgdisk -p /dev/sdd
sudo sgdisk -p /dev/sde

é

mycomputer:/dev$ sudo sgdisk -p /dev/sdb
Disk /dev/sdb: 3907029168 sectors, 1.8 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): D3E28B01-CBD8-40EB-B421-4BA0BEF275D9
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 3907029134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2157 sectors (1.1 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048      3907028991   1.8 TiB     8300  R1b


mycomputer:/dev$ sudo sgdisk -p /dev/sdd
Disk /dev/sdd: 3907029168 sectors, 1.8 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): 21E3C879-F658-47E1-AB34-D1EA25EC6FFC
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 3907029134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2157 sectors (1.1 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048      3907028991   1.8 TiB     8300  R2d


mycomputer:/dev$ sudo sgdisk -p /dev/sde
Disk /dev/sde: 3907029168 sectors, 1.8 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): 48CFD331-24FC-4D30-B8A2-EFFA709B9600
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 3907029134
Partitions will be aligned on 2048-sector boundaries
Total free space is 2157 sectors (1.1 MiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048      3907028991   1.8 TiB     8300  R3e

, então parece que as unidades ainda estão intactas e possuem todos os dados que estavam originalmente lá. Eu tenho um script onde gravei todos os comandos que usei para criar a matriz, mas estou muito inseguro / nervoso sobre como reconstruir e montar a matriz sem perder nenhum dado.

Aqui está o meu roteiro original. Há partes dele que eu obviamente não quero reexecutar, pois elas deletarão os dados.

sudo sgdisk -p /dev/sdb
sudo sgdisk -p /dev/sdd
sudo sgdisk -p /dev/sde

# DELETE ALL DATA 
#sudo sgdisk --clear /dev/sdb
#sudo sgdisk --clear /dev/sdd
#sudo sgdisk --clear /dev/sde

sudo sgdisk -n 1:2048:3907028991 /dev/sdb -c 1:"R1b"
sudo sgdisk -n 1:2048:3907028991 /dev/sdd -c 1:"R2d"
sudo sgdisk -n 1:2048:3907028991 /dev/sde -c 1:"R3e"

#sudo mkfs.ext4 -t ext4 /dev/sdb1 
#sudo mkfs.ext4 -t ext4 /dev/sdd1 
#sudo mkfs.ext4 -t ext4 /dev/sde1 

#https://raid.wiki.kernel.org/index.php/RAID_setup
#chunk size = 128kB (set by mdadm cmd, see chunk size advise above)
#block size = 4kB (recommended for large files, and most of time)
#stride = chunk / block = 128kB / 4k = 32
#stripe-width = stride * ( (n disks in raid5) - 1 ) = 32 * ( (3) - 1 ) = 32 * 2 = 64

sudo mkfs.ext4 -v -m .1 -b 4096 -E stride=32,stripe-width=64 /dev/sdb1 
sudo mkfs.ext4 -v -m .1 -b 4096 -E stride=32,stripe-width=64 /dev/sdd1 
sudo mkfs.ext4 -v -m .1 -b 4096 -E stride=32,stripe-width=64 /dev/sde1 


# make sure you have RAID module in the linux kernel
sudo modprobe raid456
cat /proc/mdstat

# Create RAID 5
sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3  /dev/sdb1 /dev/sdd1 /dev/sde1
sudo mdadm --detail --scan 
sudo mdadm --query --detail /dev/md0
sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf

cat /proc/mdstat

# Start RAID
sudo mdadm --assemble --scan 
sudo mdadm --assemble /dev/md0

# Stop RAID
sudo mdadm --stop /dev/md0

# Format the RAID
sudo mkfs.ext4 -v -m .1 -b 4096 -E stride=32,stripe-width=64 /dev/md0 

# Mount the RAID (dont forget to modify fstab)
sudo mkdir /media/raid
sudo chown username:username /media/raid
sudo mount /dev/md0 /media/raid
echo "/dev/md0    /media/raid       ext4  defaults     1  2" >> /etc/fstab

# Stop Rebuild
sudo /usr/share/mdadm/checkarray -xa
# Reconfigure initramfs
sudo update-initramfs -u

Em suma, preciso de ajuda para escolher um subconjunto desses comandos (ou talvez haja algo mais fácil que eu possa fazer). Meu melhor palpite é algo assim: é tão simples como?:

# Create RAID 5
sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3  /dev/sdb1 /dev/sdd1 /dev/sde1
# Mount the RAID (dont forget to modify fstab)
sudo mkdir /media/raid
sudo chown username:username /media/raid
sudo mount /dev/md0 /media/raid
echo "/dev/md0    /media/raid       ext4  defaults     1  2" >> /etc/fstab

ou isso não funcionará / eliminará meus dados?

    
por Erotemic 16.09.2014 / 20:35

1 resposta

0

sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3  /dev/sdb1 /dev/sdd1 /dev/sde1

Se você fizer isso, seu raid estará morto quando um superbloco completamente novo for escrito. Infelizmente você não pode usar "--build" no nível 5.

Você deve verificar o que exatamente acontece quando o ataque está tentando ser iniciado, basta usar

mdadm --assamble --scan

Em circunstâncias normais, "mdadm --assmeble --scan" monta automaticamente seu raidset e cria o dispositivo para montar (geralmente / dev / md0).

Se este passo falhar, é difícil dizer a causa do que você descreve. A saída dos seguintes comandos pode ajudar:

mdadm --examine --scan preto cat / proc / mdstat

    
por 17.09.2014 / 13:52