Recuperação de LVM com um disco com falha

0

Eu tenho uma configuração do LVM no Debian 7.8 com o kernel 3.2.65-1 + deb7u1 rodando OpenMediaVault

O LV é composto de 4 discos

Disk /dev/sdb: 4000.8 GB, 4000787030016 bytes
Disk /dev/sdc: 2000.4 GB, 2000398934016 bytes
Disk /dev/sdd: 2000.4 GB, 2000398934016 bytes
Disk /dev/sde: 1500.3 GB, 1500301910016 bytes

A partir de ontem à noite, o acesso aos compartilhamentos localizados no LV começou a ficar lento, quando finalmente os compartilhamentos ficaram totalmente indiferentes.

O syslog está mostrando a seguinte mensagem repetidamente

ata3.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0
ata3.00: BMDMA stat 0x45
ata3.00: failed command: READ DMA
ata3.00: cmd c8/00:80:80:01:00/00:00:00:00:00/e0 tag 0 dma 65536 in
         res 51/40:6f:85:01:00/00:00:4b:00:00/e0 Emask 0x9 (media error)
ata3.00: status: { DRDY ERR }
ata3.00: error: { UNC }
ata3.00: configured for UDMA/133
ata3.01: configured for UDMA/133
ata3: EH complete 

Smartd também está reportando

Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 193 Load_Cycle_Count changed from 23 to 22
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 7 Seek_Error_Rate changed from 100 to 200
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 7 Seek_Error_Rate changed from 200 to 100
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 193 Load_Cycle_Count changed from 22 to 21
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 7 Seek_Error_Rate changed from 100 to 200
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 193 Load_Cycle_Count changed from 21 to 20
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], 1 Currently unreadable (pending) sectors
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], 689 Currently unreadable (pending) sectors (changed +688)
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 197 Current_Pending_Sector changed from 200 to 198
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], 1416 Currently unreadable (pending) sectors (changed +727)
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], SMART Usage Attribute: 197 Current_Pending_Sector changed from 198 to 195
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], 1465 Currently unreadable (pending) sectors (changed +49)
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], 1465 Currently unreadable (pending) sectors
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], 1465 Currently unreadable (pending) sectors
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], 1465 Currently unreadable (pending) sectors
Device: /dev/disk/by-id/wwn-0x50014ee2af284bdd [SAT], ATA error count increased from 0 to 84

Descobri que /dev/sde é o disco com problema e não consigo mais executar o LVM, pois ele é interrompido.

Eu deveria ter espaço livre suficiente em sdb , sdc e sdd para remover sde , mas todos os comandos como pvmove apenas travariam ao tentar ler sde .

Alguma sugestão ou meu volume brinde?

Obrigado!

# pvs
  PV         VG      Fmt  Attr PSize PFree
  /dev/sdb   storage lvm2 a--  3.64t    0
  /dev/sdc   storage lvm2 a--  1.82t    0
  /dev/sdd   storage lvm2 a--  1.82t    0
  /dev/sde   storage lvm2 a--  1.36t    0

# vgs
  VG      #PV #LV #SN Attr   VSize VFree
  storage   4   1   0 wz--n- 8.64t    0

# lvs
  LV      VG      Attr     LSize Pool Origin Data%  Move Log Copy%  Convert
  storage storage -wi----- 8.64t
    
por CJSewell 21.02.2015 / 01:43

2 respostas

1

Então, depois de uma semana de ddrescue e um dia ou mais de e2fsck, tenho tudo o que resta. Parece que a maioria dos dados está lá e não está corrompida, embora uma grande parte dele permaneça perdida + seja legível.

Aqui um resumo de como eu fiz isso.
Uma observação importante: Meus discos de sistema não faziam parte do LVM. Para fazer isso, se o seu se os discos do sistema estão falhando pode exigir que você inicialize a partir de um live cd / usb drive

Obtenha o sistema inicializado
Meu sistema não inicializaria e penduraria enquanto tentava atualizar o LVM. Para contornar isso, desconectei o disco com problema sde , depois iniciei a máquina e esperei até conseguir fazer o login. Em seguida, eu pluguei o sde de volta e executei echo '0 0 0' > /sys/class/scsi_host/host3/scan Após o qual sde foi pego. ( host3 foi a porta na qual sde estava, e pode não ser a mesma para o seu disco)

Instalar o ddrescude (para o debian)

apt-get install gddrescue

Clone o disco de die com ddrescue (Primeiro passo, pule os erros para ler rapidamente o máximo de dados possíveis. Demora muito tempo dependendo dos erros e tamanho do disco)

ddrescue -f -n /dev/sde /dev/sdf /root/sde.rescue.log


GNU ddrescue 1.16
Press Ctrl-C to interrupt
rescued:   644394 MB,  errsize:    372 kB,  current rate:    4390 kB/s
rescued:     1500 GB,  errsize:  22036 kB,  current rate:       66 B/s
   ipos:    200704 B,   errors:      77,    average rate:    4942 kB/s
   opos:    200704 B,     time since last successful read:       0 s
Finished

Tente outro passe (pulando os dados que já copiamos, tente novamente 3 vezes antes de desistir. Para mim, isso demorou mais do que o primeiro passe)

ddrescue -d -f -r3 /dev/sde /dev/sdf /root/sde.rescue.log


GNU ddrescue 1.16
Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued:     1500 GB,  errsize:  22036 kB,  errors:      77
Current status
rescued:     1500 GB,  errsize:  12014 kB,  current rate:      512 B/s
   ipos:    199680 B,   errors:     972,    average rate:      768 B/s
   opos:    199680 B,     time since last successful read:       0 s
Splitting failed blocks...

Em seguida, encerro a máquina e removi sde e conectei o que era sdf na mesma porta sata na qual sde estava e inicializei o backup.
Na inicialização, o LVM apareceu, mas houve muitos erros ao tentar examinar os arquivos.

Corrija o sistema de arquivos (Responda sim em todas as questsion, verifique o sistema de arquivos Verbose e Force)

e2fsck -y -v -f /dev/mapper/storage-storage

Eu então fui capaz de montar o sistema de arquivos e começar a ver o dano. Como dito, um grande número de dados acabou em perdido + achado. Até agora, seus únicos nomes de pastas foram perdidos. Verificar o conteúdo das pastas que eu consigo juntar onde tudo pertence

Referências:

por 02.03.2015 / 11:11
0

É improvável, mas você pode tentar uma migração de dados usando o recurso de espelho do LVM . A desvantagem é que você precisará de pelo menos a mesma quantidade de armazenamento em seu novo volume que seu volume antigo. Também não há garantia de que você recuperará todos os seus dados devido a erros de disco persistentes, mas qualquer dado legível ainda poderá sobreviver à viagem. Vale a tentativa; o pior que acontece é que você perde os dados que está prestes a perder de qualquer maneira.

    
por 24.02.2015 / 16:54

Tags