Software raid - mdadm - reencontra meu array

12

Descrição

Hoje, conectei outro disco rígido e desconectei meus drives de ataque para garantir que, quando eu limpar o disco, eu não acidentalmente pegasse os discos errados.

Agora que eu conectei novamente minhas unidades, a matriz RAID 1 do software não está mais sendo montada / reconhecida / localizada. Usando o utilitário de disco, eu pude ver que as unidades são / dev / sda e / dev / sdb, então eu tentei rodar sudo mdadm -A /dev/sda /dev/sdb Infelizmente eu recebo uma mensagem de erro informando mdadm: device /dev/sda exists but is not an md array

Especificações:

SO: Ubuntu 12.04 LTS Desktop (64 bits)

Drives: 2 x 3 TB WD Vermelho (os mesmos modelos são novos) SO instalado na terceira unidade (64GB ssd) (muitas instalações do linux)

Placa-mãe: P55 FTW

Processador: Intel i7-870 Especificações completas

Resultado de sudo mdadm --assemble --scan

mdadm: No arrays found in config file or automatically

Quando eu inicializo do modo de recuperação, recebo um zilhão de 'códigos de erro ata1' voando por um tempo muito longo.

Alguém pode me informar os passos apropriados para recuperar a matriz?

Eu ficaria feliz em apenas recuperar os dados se essa for uma alternativa possível para a reconstrução do array. Eu li sobre o disco de teste 'e ele afirma no wiki que ele pode encontrar partições perdidas para o Linux RAID md 0.9 / 1.0 / 1.1 / 1.2, mas estou executando o mdadm versão 3.2.5 parece. Alguém mais já teve experiência com isso para recuperar dados de invasão de software 1?

Resultado de sudo mdadm --examine /dev/sd* | grep -E "(^\/dev|UUID)"

mdadm: No md superblock detected on /dev/sda.
mdadm: No md superblock detected on /dev/sdb.
mdadm: No md superblock detected on /dev/sdc1.
mdadm: No md superblock detected on /dev/sdc3.
mdadm: No md superblock detected on /dev/sdc5.
mdadm: No md superblock detected on /dev/sdd1.
mdadm: No md superblock detected on /dev/sdd2.
mdadm: No md superblock detected on /dev/sde.
/dev/sdc:
/dev/sdc2:
/dev/sdd:

Conteúdo do mdadm.conf:

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# definitions of existing MD arrays

# This file was auto-generated on Tue, 08 Jan 2013 19:53:56 +0000
# by mkconf $Id$

O resultado de sudo fdisk -l , como você pode ver, sda e sdb estão faltando.

Disk /dev/sdc: 64.0 GB, 64023257088 bytes
255 heads, 63 sectors/track, 7783 cylinders, total 125045424 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0009f38d

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1   *        2048     2000895      999424   82  Linux swap / Solaris
/dev/sdc2         2002942    60594175    29295617    5  Extended
/dev/sdc3        60594176   125044735    32225280   83  Linux
/dev/sdc5         2002944    60594175    29295616   83  Linux

Disk /dev/sdd: 60.0 GB, 60022480896 bytes
255 heads, 63 sectors/track, 7297 cylinders, total 117231408 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x58c29606

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sdd2          206848   234455039   117124096    7  HPFS/NTFS/exFAT

Disk /dev/sde: 60.0 GB, 60022480896 bytes
255 heads, 63 sectors/track, 7297 cylinders, total 117231408 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

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

A saída do dmesg | grep ata foi muito longo, então aqui está um link: link

A saída do dmesg | grep ata | cabeça -n 200 depois de definir bios para ahci e ter que arrancar sem esses dois discos.

[    0.000000]  BIOS-e820: 000000007f780000 - 000000007f78e000 (ACPI data)
[    0.000000] Memory: 16408080k/18874368k available (6570k kernel code, 2106324k absent, 359964k reserved, 6634k data, 924k init)
[    1.043555] libata version 3.00 loaded.
[    1.381056] ata1: SATA max UDMA/133 abar m2048@0xfbff4000 port 0xfbff4100 irq 47
[    1.381059] ata2: SATA max UDMA/133 abar m2048@0xfbff4000 port 0xfbff4180 irq 47
[    1.381061] ata3: SATA max UDMA/133 abar m2048@0xfbff4000 port 0xfbff4200 irq 47
[    1.381063] ata4: SATA max UDMA/133 abar m2048@0xfbff4000 port 0xfbff4280 irq 47
[    1.381065] ata5: SATA max UDMA/133 abar m2048@0xfbff4000 port 0xfbff4300 irq 47
[    1.381067] ata6: SATA max UDMA/133 abar m2048@0xfbff4000 port 0xfbff4380 irq 47
[    1.381140] pata_acpi 0000:0b:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    1.381157] pata_acpi 0000:0b:00.0: setting latency timer to 64
[    1.381167] pata_acpi 0000:0b:00.0: PCI INT A disabled
[    1.429675] ata_link link4: hash matches
[    1.699735] ata1: SATA link down (SStatus 0 SControl 300)
[    2.018981] ata2: SATA link down (SStatus 0 SControl 300)
[    2.338066] ata3: SATA link down (SStatus 0 SControl 300)
[    2.657266] ata4: SATA link down (SStatus 0 SControl 300)
[    2.976528] ata5: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
[    2.979582] ata5.00: ATAPI: HL-DT-ST DVDRAM GH22NS50, TN03, max UDMA/100
[    2.983356] ata5.00: configured for UDMA/100
[    3.319598] ata6: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[    3.320252] ata6.00: ATA-9: SAMSUNG SSD 830 Series, CXM03B1Q, max UDMA/133
[    3.320258] ata6.00: 125045424 sectors, multi 16: LBA48 NCQ (depth 31/32), AA
[    3.320803] ata6.00: configured for UDMA/133
[    3.324863] Write protecting the kernel read-only data: 12288k
[    3.374767] pata_marvell 0000:0b:00.0: PCI INT A -> GSI 18 (level, low) -> IRQ 18
[    3.374795] pata_marvell 0000:0b:00.0: setting latency timer to 64
[    3.375759] scsi6 : pata_marvell
[    3.376650] scsi7 : pata_marvell
[    3.376704] ata7: PATA max UDMA/100 cmd 0xdc00 ctl 0xd880 bmdma 0xd400 irq 18
[    3.376707] ata8: PATA max UDMA/133 cmd 0xd800 ctl 0xd480 bmdma 0xd408 irq 18
[    3.387938] sata_sil24 0000:07:00.0: version 1.1
[    3.387951] sata_sil24 0000:07:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
[    3.387974] sata_sil24 0000:07:00.0: Applying completion IRQ loss on PCI-X errata fix
[    3.388621] scsi8 : sata_sil24
[    3.388825] scsi9 : sata_sil24
[    3.388887] scsi10 : sata_sil24
[    3.388956] scsi11 : sata_sil24
[    3.389001] ata9: SATA max UDMA/100 host m128@0xfbaffc00 port 0xfbaf0000 irq 19
[    3.389004] ata10: SATA max UDMA/100 host m128@0xfbaffc00 port 0xfbaf2000 irq 19
[    3.389007] ata11: SATA max UDMA/100 host m128@0xfbaffc00 port 0xfbaf4000 irq 19
[    3.389010] ata12: SATA max UDMA/100 host m128@0xfbaffc00 port 0xfbaf6000 irq 19
[    5.581907] ata9: SATA link up 3.0 Gbps (SStatus 123 SControl 0)
[    5.618168] ata9.00: ATA-8: OCZ-REVODRIVE, 1.20, max UDMA/133
[    5.618175] ata9.00: 117231408 sectors, multi 16: LBA48 NCQ (depth 31/32)
[    5.658070] ata9.00: configured for UDMA/100
[    7.852250] ata10: SATA link up 3.0 Gbps (SStatus 123 SControl 0)
[    7.891798] ata10.00: ATA-8: OCZ-REVODRIVE, 1.20, max UDMA/133
[    7.891804] ata10.00: 117231408 sectors, multi 16: LBA48 NCQ (depth 31/32)
[    7.931675] ata10.00: configured for UDMA/100
[   10.022799] ata11: SATA link down (SStatus 0 SControl 0)
[   12.097658] ata12: SATA link down (SStatus 0 SControl 0)
[   12.738446] EXT4-fs (sda3): mounted filesystem with ordered data mode. Opts: (null)

Os testes inteligentes nas unidades voltaram "saudáveis", mas não consigo inicializar a máquina com as unidades conectadas quando a máquina está no modo AHCI (não sei se isso é importante, mas são tintas WD de 3 TB). Espero que isso signifique que os discos são bons, já que eram um pouco comprados e novos. Utilitário de disco mostra um enorme 'desconhecido' cinza mostrado abaixo:

Eu removi meu RevoDrive para tentar tornar as coisas mais simples / claras.

Tanto quanto eu posso dizer, a placa-mãe não tem dois controladores. Talvez a Revodrive que eu removi desde então, que se conecta através do pci, estivesse confundindo as coisas?

Alguém tem alguma sugestão sobre como recuperar os dados da unidade em vez de reconstruir a matriz? Ou seja um passo-a-passo sobre o uso do testdisk ou algum outro programa de recuperação de dados ....

Eu tentei colocar as unidades em outra máquina. Eu tive o mesmo problema em que a máquina não passaria pela tela do BIOS, mas essa seria constantemente reinicializada. A única maneira de fazer a máquina inicializar seria desconectar as unidades. Eu tentei usar diferentes cabos SATA sem ajuda. Eu consegui uma vez conseguir descobrir a unidade, mas novamente mdadm --examine não revelou nenhum bloqueio. Isso sugere que os meus próprios discos são # @@ # $ # @ mesmo que os testes inteligentes e curtos tenham declarado que eles são 'saudáveis'?

Parece que as unidades estão realmente além do resgate. Eu não posso nem mesmo formatar os volumes no utilitário de disco. O Gparted não vê as unidades para colocar uma tabela de partições. Eu não posso nem emitir um comando de apagamento seguro para reinicializar completamente as unidades. Foi definitivamente uma invasão de software que eu configurei depois de descartar que o hardware raid que eu tinha inicialmente tentado era na verdade 'fake' raid e mais lento do que raid de software.

Obrigado por todos os seus esforços para tentar me ajudar. Eu acho que a 'resposta' é que não há nada que você possa fazer se você de alguma forma conseguir matar ambas as suas unidades simultaneamente.

Eu tentei novamente os testes SMART (desta vez na linha de comando em vez do utilitário de disco) e as unidades do respondem com êxito 'sem erro' . No entanto, não consigo formatar as unidades (usando o utilitário de disco) ou tê-las reconhecidas pelo Gparted nessa máquina ou em outra. Também não consigo executar os comandos hdparm secure erase ou security-set-password nas unidades. Talvez eu precise dd / dev / null as unidades inteiras? Como na terra eles ainda estão respondendo à SMART, mas dois computadores não conseguem fazer nada com eles? Estou executando testes longos e inteligentes em ambas as unidades agora e publicarei os resultados em 255 minutos (esse é o tempo que eles disseram que demoraria).

Eu coloquei as informações do processador com as outras especificações técnicas (por placa-mãe etc). Essa é uma arquitetura pré-arenosa.

Saída da verificação estendida do SMART de uma unidade:

smartctl 5.41 2011-06-09 r3365 [x86_64-linux-3.2.0-36-generic] (local build)
Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

=== START OF INFORMATION SECTION ===
Device Model:     WDC WD30EFRX-68AX9N0
Serial Number:    WD-WMC1T1480750
LU WWN Device Id: 5 0014ee 058d18349
Firmware Version: 80.00A80
User Capacity:    3,000,592,982,016 bytes [3.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   9
ATA Standard is:  Exact ATA specification draft version not indicated
Local Time is:    Sun Jan 27 18:21:48 2013 GMT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                    was never started.
                    Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                    without error or no self-test has ever 
                    been run.
Total time to complete Offline 
data collection:        (41040) seconds.
Offline data collection
capabilities:            (0x7b) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    Offline surface scan supported.
                    Self-test supported.
                    Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                    General Purpose Logging supported.
Short self-test routine 
recommended polling time:    (   2) minutes.
Extended self-test routine
recommended polling time:    ( 255) minutes.
Conveyance self-test routine
recommended polling time:    (   5) minutes.
SCT capabilities:          (0x70bd) SCT Status supported.
                    SCT Error Recovery Control supported.
                    SCT Feature Control supported.
                    SCT Data Table supported.

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   196   176   021    Pre-fail  Always       -       5175
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       29
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       439
 10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       29
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       24
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       4
194 Temperature_Celsius     0x0022   121   113   000    Old_age   Always       -       29
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   100   253   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%       437         -
# 2  Short offline       Completed without error       00%       430         -
# 3  Extended offline    Aborted by host               90%       430         -

SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.

Disse concluído sem erro.Isso significa que a unidade deve estar bem ou apenas que o teste foi capaz de ser concluído? Devo começar uma nova pergunta já que estou mais preocupado em obter o uso das unidades de volta em vez do array data / raid neste ponto ...

Bem, hoje eu estava procurando em meu sistema de arquivos para ver se havia algum dado a ser mantido antes de configurar o centOS. Eu notei uma pasta chamada dmraid.sil na minha pasta pessoal. Eu estou supondo que isso é a partir de quando eu tinha inicialmente configurado o arranjo raid com o controlador de ataque falso? Eu tinha a certeza de remover o dispositivo (há algum tempo atrás, antes deste problema) e antes de usar o mdadm para criar 'software raid'. Existe alguma maneira que eu perdi um truque em algum lugar e isso foi de alguma forma executando 'fake' raid sem o dispositivo e é isso que esta pasta dmraid.sil é tudo? Muito confuso. Existem arquivos lá como o sda.size sda_0.dat sda_0.offset etc. Qualquer conselho sobre o que esta pasta representa seria útil.

Acontece que as unidades estavam trancadas! Eu os desbloqueei com bastante facilidade com o comando hdparm. Provavelmente, isso é o que causou todos os erros da entrada de saída. Infelizmente agora tenho esse problema:

Consegui montar o dispositivo md. É possível desconectar uma unidade, formatá-la em uma unidade normal e copiar os dados para isso? Eu tive bastante 'diversão' com raid e vou descer uma rota de backups automatizada com rsync eu acho. Quero perguntar antes de fazer qualquer coisa que possa causar problemas de integridade de dados.

por Programster 13.04.2017 / 14:24

1 resposta

5

O problema é que as unidades ficaram "bloqueadas" em algum momento. Isso explica:

  • Os erros de entrada / saída que recebi para todos os comandos.
  • A incapacidade de formatar as unidades ou vê-las com o gparted.
  • A incapacidade de inicializar com os discos em. (teria sido útil se o terminal não exibiu isso como status SMART BAD)
  • O fato de eu receber erros de E / S em vários computadores mostrando não foram os cabos / ônibus.

Uma vez desbloqueado com um simples comando hdparm sudo hdparm --user-master u --security-unlock p /dev/sdb(c) e uma reinicialização, meu dispositivo mdxxx ficou visível no gparted. Eu era então capaz de apenas sudo montá-lo em uma pasta e ver todos os meus dados! Não tenho ideia do que fez com que as unidades "travassem". Eu também estou perdendo o e2label parece. Eu não tenho ideia do que é isso. Talvez alguém possa fornecer uma resposta melhor, que explica:

  • como as unidades podem ter sido bloqueadas em primeiro lugar (desconectando as unidades enquanto o sistema está ativo / em operação / ao vivo?)
  • se isso não é um array mdadm? ou se é por isso que a configuração arquivo não parece mostrar isso?
por Stu2000 30.01.2013 / 20:14