Montando disco (s) a partir da matriz RAID 1 para recuperação de dados

2

Estou tendo alguns problemas com um servidor Debian 7.5 stable (Wheezy) . Atualmente está sendo executado no Modo de Recuperação.

Tem um 2 x 2000 GB de HDD em execução numa matriz RAID 1 .

Minha prioridade imediata é poder acessar e fazer backup de um diretório específico ( /home/servers/ ).

O problema é que estou tendo dificuldade em montar o (s) disco (s). Eu preferiria fazer isso de maneira limpa, usando a matriz RAID, mas tudo está ok, desde que eu possa acessar os dados, porque depois reinstalarei tudo e mudarei para o Ubuntu.

root@rescue:~# fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  3907029167  1953514583+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1  3907029167  1953514583+  ee  GPT
Partition 1 does not start on physical sector boundary.

Disk /dev/md2: 1978.4 GB, 1978380779520 bytes
2 heads, 4 sectors/track, 483003120 cylinders, total 3864024960 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md2 doesn't contain a valid partition table

Disk /dev/md1: 21.5 GB, 21474770944 bytes
2 heads, 4 sectors/track, 5242864 cylinders, total 41942912 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md1 doesn't contain a valid partition table

Primeiro, tentei o caminho mais fácil:

root@rescue:~# mount /dev/sda1 sda1
mount: unknown filesystem type 'linux_raid_member'

Depois tentei seguir este guia @ link

root@rescue:~# mdadm -A -R /dev/md9 /dev/sda1
mdadm: /dev/sda1 is busy - skipping

Eu reiniciei o servidor, mas / dev / sda1 ainda está ocupado. Agora estou preso e este é um servidor de produção! Por favor me ajude, eu não sei como proceder daqui.

ATUALIZAÇÃO:

root@rescue:~# cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] [faulty]
md1 : active raid1 sda1[0] sdb1[1]
      20971456 blocks [2/2] [UU]

md2 : active raid1 sda2[0] sdb2[1]
      1932012480 blocks [2/2] [UU]

unused devices: <none>

.

root@rescue:~# cat /etc/fstab
# /etc/fstab: Information sur les systèmes de fichiers.
#
# <sys.fichiers><pt de montage><type> <options>  <dump> <pass>
proc    /proc   proc    defaults        0       0
    
por Sharp 09.07.2014 / 19:32

1 resposta

2

O que acontece se você tentar o seguinte:

mkdir /mnt/md1
mount /dev/md1 /mnt/md1

mkdir /mnt/md2
mount /dev/md2 /mnt/md2

?

Isto irá criar pastas vazias para usar como pontos de montagem e tentar montar os sistemas de arquivos raid se ele puder montá-los corretamente (se tiver algum problema ao montá-los, ele informará o erro e deixará as unidades intactas).

Se esses comandos funcionarem, seus arquivos estarão em /mnt/md1/servers/ ou /mnt/md2/servers/ (provavelmente o segundo)

Para referência futura:

/proc/mdstat envia uma lista de todos os arrays RAID ativos e inativos. Para você, isso mostra que você tem uma matriz de 21,5GiB ( md1 ) baseada em /dev/sda1 e /dev/sdb1 e uma segunda matriz de 1,9TiB ( md2 ) incorporada em /dev/sda2 e /dev/sdb2 . Esse é um esquema de particionamento bastante comum em que o OS / Applications reside em uma partição pequena ( md1 ) e todos os dados do usuário ( /home/* ) são armazenados em uma partição separada e maior ( md2 ). Isso facilita a limpeza da partição do SO e a reinstalação sem a necessidade de mover um monte de dados do usuário.

/etc/fstab lista todos os pontos de montagem padrão no sistema. Isso não é muito útil aqui porque você está usando um sistema de recuperação, mas em um sistema que não é de resgate, veríamos algo como um mapeamento para /dev/md1 to / e /dev/md2 to /home/ (se a suposição sobre o particionamento no parágrafo anterior é verdadeira).

Quando um sistema é inicializado, ele detecta automaticamente as matrizes RAID e as iniciará se encontrar todas as unidades (por isso elas já estão em execução e por que mdadm falhou com um erro de ocupado quando você tentou montar um array /dev/md9 manualmente - o array md1 já estava usando). No entanto, como esse é um sistema de recuperação, não havia informações de montagem em /etc/fstab para informar ao sistema para montar /dev/md1 e /dev/md2 em algum lugar - isso é o que o bloco de comandos acima tenta fazer manualmente.

    
por 09.07.2014 / 20:56