Re: array went wonky

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sorry, I realize I had md127 started.  So I stopped it and did the assemble and got the following (the problem is sdf isn't supposed to be a spare at all, it's supposed to be a ddrescue'd sdc:

eduardo ~ # mdadm --stop /dev/md127
mdadm: stopped /dev/md127
eduardo ~ # mdadm --assemble --force /dev/md127 /dev/sd{f,g,e,a}1
mdadm: /dev/md127 assembled from 3 drives and 1 spare - not enough to start the array.
eduardo ~ #


eduardo ~ # mdadm --examine /dev/sd{f,g,e,a}1 | egrep 'Event|/dev/sd'
/dev/sdf1:
         Events : 25979
this     5       8       81        5      spare   /dev/sdf1
   0     0       8       33        0      active sync   /dev/sdc1
   2     2       8       65        2      active sync   /dev/sde1
   4     4       8        1        4      active sync   /dev/sda1
   5     5       8       81        5      spare   /dev/sdf1
/dev/sdg1:
         Events : 25979
this     1       8       17        1      active sync   /dev/sdb1
   0     0       8       33        0      active sync   /dev/sdc1
   1     1       8       17        1      active sync   /dev/sdb1
   2     2       8       65        2      active sync   /dev/sde1
   4     4       8        1        4      active sync   /dev/sda1
   5     5       8       81        5      spare   /dev/sdf1
/dev/sde1:
         Events : 25979
this     2       8       65        2      active sync   /dev/sde1
   0     0       8       33        0      active sync   /dev/sdc1
   2     2       8       65        2      active sync   /dev/sde1
   4     4       8        1        4      active sync   /dev/sda1
   5     5       8       81        5      spare   /dev/sdf1
/dev/sda1:
         Events : 25979
this     4       8        1        4      active sync   /dev/sda1
   0     0       8       33        0      active sync   /dev/sdc1
   2     2       8       65        2      active sync   /dev/sde1
   4     4       8        1        4      active sync   /dev/sda1
   5     5       8       81        5      spare   /dev/sdf1





On May 2, 2013, at 7:18 AM, Gimpbully <gimpbully@xxxxxxxxx> wrote:

> This is very odd.  When trying to force an assemble, it's syaing no superblock on /dev/sdf1, but the --examine output appears to say otherwise…  Does anyone have any idea how to do this without doing a re-creation?
> 
> 
> eduardo ~ # mdadm --examine /dev/sd{f,g,e,a}1 | egrep 'Event|/dev/sd'
> /dev/sdf1:
>         Events : 25979
> this     5       8       81        5      spare   /dev/sdf1
>   0     0       8       33        0      active sync   /dev/sdc1
>   2     2       8       65        2      active sync   /dev/sde1
>   4     4       8        1        4      active sync   /dev/sda1
>   5     5       8       81        5      spare   /dev/sdf1
> /dev/sdg1:
>         Events : 25971
> this     1       8       17        1      active sync   /dev/sdb1
>   0     0       8       33        0      active sync   /dev/sdc1
>   1     1       8       17        1      active sync   /dev/sdb1
>   2     2       8       65        2      active sync   /dev/sde1
>   4     4       8        1        4      active sync   /dev/sda1
>   5     5       8       81        5      spare   /dev/sdf1
> /dev/sde1:
>         Events : 25979
> this     2       8       65        2      active sync   /dev/sde1
>   0     0       8       33        0      active sync   /dev/sdc1
>   2     2       8       65        2      active sync   /dev/sde1
>   4     4       8        1        4      active sync   /dev/sda1
>   5     5       8       81        5      spare   /dev/sdf1
> /dev/sda1:
>         Events : 25979
> this     4       8        1        4      active sync   /dev/sda1
>   0     0       8       33        0      active sync   /dev/sdc1
>   2     2       8       65        2      active sync   /dev/sde1
>   4     4       8        1        4      active sync   /dev/sda1
>   5     5       8       81        5      spare   /dev/sdf1
> eduardo ~ #
> 
> 
> 
> On May 1, 2013, at 11:59 AM, Gimpbully <gimpbully@xxxxxxxxx> wrote:
> 
>> Alright, so I've ddrescued 2 disks now:
>> sda - clean
>> sdb - SMART errors, kicked out of array
>> sdc - SMART errors, kicked out of array
>> sde - ddrescued copy of sdb
>> sdf - original failed disk, replaced.  is now a ddrescued copy of sdc
>> 
>> So I run 
>> 
>> eduardo ~ # mdadm --assemble --force /dev/md127 /dev/sd{f,g,e,a}1
>> mdadm: cannot open device /dev/sdf1: Device or resource busy
>> mdadm: /dev/sdf1 has no superblock - assembly aborted
>> eduardo ~ # 
>> 
>> Any ideas?
>> 
>> On Apr 30, 2013, at 7:48 AM, Gimpbully <gimpbully@xxxxxxxxx> wrote:
>> 
>>> I have no intentions of recreating at all.  I fully understand the implications (I've had stripe orders go bad on truly massive scales before, I don't ever wanna experience that again), I just don't know mdadm as well as other vendor storage.
>>> 
>>> I was able to ddrescue a copy of sdb with no errors.  I assembled the array and got a file system metadata dump (this is HUGE) and it's currently rebuilding before I even look at data.  Thank you all for your help, patience was absolutely key here.
>>> 
>>> 
>>> On Apr 30, 2013, at 7:45 AM, Phil Turmel <philip@xxxxxxxxxx> wrote:
>>> 
>>>> On 04/30/2013 02:20 AM, Sam Bingner wrote:
>>>>> On Apr 29, 2013, at 4:33 PM, "Gimpbully" <gimpbully@xxxxxxxxx>
>>>>> wrote:
>>>>>> On Apr 13, 2013, at 7:20 AM, Sam Bingner <sam@xxxxxxxxxxx> wrote:
>>>>>> 
>>>>>>> After that you can try to recreate the array with the proper
>>>>>>> order (sdc1, sdb1, sde1, missing, sda1) and copy data off or add
>>>>>>> the spare in again depending on if you were able to recover all
>>>>>>> the data wih GNU ddrescue.
>>>>>> 
>>>>>> 
>>>>>> What do you mean recreate?  what's the specific command?  something
>>>>>> like:
>>>>>> mdadm --create --assume-clean --level=5 --raid-devices=5 /dev/md127
>>>>>> /dev/sdc1 /dev/sdb1 /sdv/sde1 missing  /dev/sda1
>>>>> 
>>>>> Don't recreate it - I said the wrong thing... You want to do an
>>>>> assemble on them with force if possible... Recreate is last ditch and
>>>>> make sure you have another copy if you do the previous command in
>>>>> case it doesn't work right due to offsets etc...
>>>>> 
>>>>> try:
>>>>> mdadm --stop /dev/md127
>>>>> mdadm --assemble --force /dev/md127 /dev/sd{c,b,e,a}1
>>>> 
>>>> Yes.
>>>> 
>>>>> If you DO need to recreate it, what you showed looks correct.
>>>> 
>>>> NO!
>>>> 
>>>> The OP has *not* shared sufficient information on the array members to
>>>> say that.  Since it has "worked for years", the odds of an offset error
>>>> is *very* high.  Chunk size defaults are also likely to be different.
>>>> 
>>>> *Complete* output of "mdadm -E" for the array members is needed before
>>>> any "--create" operation is attempted.  Plus the distro info, kernel
>>>> version, and mdadm version .
>>>> 
>>>> Phil
>>> 
>> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux