Skip to contentSkip to conversation

Question: how to identify failing disk in a RAID1

DISCUSSION Maurice Hilarius 7 participants 15 messages Apr 13, 2008 – Apr 28, 2008 8 messages not in the archive MD RAID

lore
Share & tools
lore
#0 lore raw

Hi there.

Recently I have been frequently seeing a damaged filesystem on a RAID1 on boot. a lengthy fsck does get it working, but I am seeing files disappearing as a result.

I am pretty sure that one of the drives has developed some issues and needs to be replaced.

How does one identify which of the 2 disks is the one that is failing?

The system has 2 identical disks, and / is on md0

fstab:

/dev/md0                /                       ext3    defaults        1 1
LABEL=/boot1            /boot                   ext2    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=/boot11           /boot1                  ext2    defaults        1 2
LABEL=SWAP-sdb3         swap                    swap    defaults        0 0
LABEL=SWAP-sda2         swap                    swap    defaults        0 0

fdisk -l shows me:
Disk /dev/sda: 400.0 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14         535     4192965   82  Linux swap / Solaris
/dev/sda3             536       48641   386411445   fd  Linux raid autodetect

Disk /dev/sdb: 400.0 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sdb1   *           1          13      104391   83  Linux
/dev/sdb2              14       48118   386403412+  fd  Linux raid autodetect
/dev/sdb3           48119       48640     4192965   82  Linux swap / Solaris

Disk /dev/md0: 395.6 GB, 395677007872 bytes
2 heads, 4 sectors/track, 96600832 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Anyone have a suggestion, please?
Responses off list are probably most appropriate.

Thanks for any help.

Signature · 2 lines
Regards, Maurice
[email protected]
#1 lore raw
Quoted 41 lines · Maurice Hilarius

Hi there.

Recently I have been frequently seeing a damaged filesystem on a RAID1 on boot. a lengthy fsck does get it working, but I am seeing files disappearing as a result.

I am pretty sure that one of the drives has developed some issues and needs to be replaced.

How does one identify which of the 2 disks is the one that is failing?

The system has 2 identical disks, and / is on md0

fstab:

/dev/md0                /                       ext3    defaults        1 1
LABEL=/boot1            /boot                   ext2    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=/boot11           /boot1                  ext2    defaults        1 2
LABEL=SWAP-sdb3         swap                    swap    defaults        0 0
LABEL=SWAP-sda2         swap                    swap    defaults        0 0

fdisk -l shows me:
Disk /dev/sda: 400.0 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14         535     4192965   82  Linux swap / Solaris
/dev/sda3             536       48641   386411445   fd  Linux raid autodetect

Disk /dev/sdb: 400.0 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sdb1   *           1          13      104391   83  Linux
/dev/sdb2              14       48118   386403412+  fd  Linux raid autodetect
/dev/sdb3           48119       48640     4192965   82  Linux swap / Solaris
Quoted 20 lines

Disk /dev/md0: 395.6 GB, 395677007872 bytes
2 heads, 4 sectors/track, 96600832 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Anyone have a suggestion, please?
Responses off list are probably most appropriate.

Thanks for any help.

Signature · 9 lines
Regards, Maurice
[email protected]



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

smartctl -a /dev/sda
smartctl -a /dev/sdb

also, how come swap was not on the raid1?

#2 lore raw
Quoted 59 lines · Justin Piszcz
Quoted 41 lines · Maurice Hilarius

Hi there.

Recently I have been frequently seeing a damaged filesystem on a RAID1 on boot. a lengthy fsck does get it working, but I am seeing files disappearing as a result.

I am pretty sure that one of the drives has developed some issues and needs to be replaced.

How does one identify which of the 2 disks is the one that is failing?

The system has 2 identical disks, and / is on md0

fstab:

/dev/md0                /                       ext3    defaults        1 1
LABEL=/boot1            /boot                   ext2    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=/boot11           /boot1                  ext2    defaults        1 2
LABEL=SWAP-sdb3         swap                    swap    defaults        0 0
LABEL=SWAP-sda2         swap                    swap    defaults        0 0

fdisk -l shows me:
Disk /dev/sda: 400.0 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14         535     4192965   82  Linux swap / Solaris
/dev/sda3             536       48641   386411445   fd  Linux raid autodetect

Disk /dev/sdb: 400.0 GB, 400088457216 bytes
255 heads, 63 sectors/track, 48641 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/sdb1   *           1          13      104391   83  Linux
/dev/sdb2              14       48118   386403412+  fd  Linux raid autodetect
/dev/sdb3           48119       48640     4192965   82  Linux swap / Solaris
Quoted 13 lines

Disk /dev/md0: 395.6 GB, 395677007872 bytes
2 heads, 4 sectors/track, 96600832 cylinders
Units = cylinders of 8 * 512 = 4096 bytes

Anyone have a suggestion, please?
Responses off list are probably most appropriate.

Thanks for any help.

Signature · 2 lines
Regards, Maurice
[email protected]
Quoted 4 lines

smartctl -a /dev/sda
smartctl -a /dev/sdb

also, how come swap was not on the raid1?

Very unexpected that the data would be bad without any hardware errors. Did you look at your logs to see if one of your drives, or perhasps both, are getting hardware errors? I would run a 'check' and and see what mdadm finds on the array, you may have other problems.

Actually, I think I would run memtest86 for at least a few hours, starting from a really cold system (not just a cold boot, off for a few hours). Your comment "on boot" may come from memory or other component which needs to physically get up to temperature before working reliably. Particularly if you don't get additional errors after you have been up for a while.

Signature · 3 lines
Bill Davidsen <[email protected]>
 "Woe unto the statesman who makes war without a reason that will still
 be valid when the war is over..." Otto von Bismark 

A message that is not in the archive (sent off-list or not yet received): [email protected]

#4 lore raw
Quoted 5 lines · Maurice Hilarius
Quoted 4 lines · Bill Davidsen

..

Quoted 2 lines
Quoted 2 lines

I am pretty sure that one of the drives has developed some issues and needs to be replaced. ..

Quoted 7 lines
Quoted 1 line

Very unexpected that the data would be bad without any hardware errors.

I DID say:
"I am pretty sure that one of the drives has developed some issues and needs to be replaced. "

Quoted 1 line

Did you look at your logs to see if one of your drives, or perhasps both, are getting hardware errors?

Oh, I KNOW one does..
The question is WHICH one?

I no longer have any old logs showing errors, but /var/log/messages and/or dmesg should have an error message with a drive identification if you are getting disk errors.

Quoted 3 lines
Quoted 2 lines

I would run a 'check' and and see what mdadm finds on the array, you may have other problems.

Pardon my stupidity, care to share some syntax for that?

cd /sys/block/md0/md
echo check >sync_action; cat mismatch_cnt

That's the count of errors found. Replace 'check' with 'repair' to make the errors go away, reboot, run 'check' again.

Quoted 10 lines
Quoted 1 line

Actually, I think I would run memtest86 for at least a few hours, starting from a really cold system (not just a cold boot, off for a few hours).

Did that already.

Quoted 2 lines

Your comment "on boot" may come from memory or other component which needs to physically get up to temperature before working reliably. Particularly if you don't get additional errors after you have been up for a while.

It happens cold or hot.

Signature · 1 line
Regards, Maurice
Signature · 3 lines
Bill Davidsen <[email protected]>
 "Woe unto the statesman who makes war without a reason that will still
 be valid when the war is over..." Otto von Bismark 

A message that is not in the archive (sent off-list or not yet received): [email protected]

#6 lore raw
Quoted 7 lines · Maurice Hilarius
Quoted 4 lines · Bill Davidsen

..
cd /sys/block/md0/md
echo check >sync_action; cat mismatch_cnt

Hi Bill,

Quoted 8 lines

I am doing this as root.
I am seeing:

[root@localhost md]# echo check >sync_action; cat mismatch_cnt -bash: echo: write error: Device or resource busy
0

any suggestions?

First, did you cd to the /sys/block/mdX/md directory? And did you wait for the check to finish, watching /proc/mdstat? I left that out, assumed you had read it in the man pages...

Signature · 3 lines
Bill Davidsen <[email protected]>
 "Woe unto the statesman who makes war without a reason that will still
 be valid when the war is over..." Otto von Bismark 

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

#10 lore raw
Quoted 7 lines · Maurice Hilarius

Morning Bill.

BTW< I want to say "Thanks for your help with this" first. Just in case I forgot.

So, I ran "check" once. It complained, and failed.

Does the failure provide any useful information?

Quoted 2 lines

A few hours later, I ran it again, and it immediately returned "0"

I totally don't understand that, assuming that the first check was sone.

Quoted 6 lines

I am still puzzled:
Why it failed the first time
Why it returned a result in a couple of seconds the second time. What it tells me?
I gather this means the md0 device is healthy.

I don't think so, I've never had a check *fail*, I just expect it to tell me how bad things are.

Quoted 1 line

So, meanwhile back at the ranch, I still think sda is failing..

I think it's time to be keeping a good backup, and hopefully someone else has a good thought on running this down more.

Quoted 1 line

Any thoughts on that?

The only thought I have at the moment is marginal power supply, and that's just because it can generate all manner of odd behaviors, rather than any other hints. Sorry.

If you aren't getting errors from SMART or logs, and I don't remember you sending me that info, I'm not sure how you determine which drive is the problem.

Signature · 3 lines
Bill Davidsen <[email protected]>
 "Woe unto the statesman who makes war without a reason that will still
 be valid when the war is over..." Otto von Bismark 

A message that is not in the archive (sent off-list or not yet received): [email protected]

#12 lore raw
Quoted 38 lines · Maurice Hilarius
Quoted 10 lines · Bill Davidsen
Quoted 7 lines · Maurice Hilarius

Morning Bill.

BTW< I want to say "Thanks for your help with this" first. Just in case I forgot.

So, I ran "check" once. It complained, and failed.

Does the failure provide any useful information?

No.
Here is what I got the first time:

root@localhost md]# echo check >sync_action; cat mismatch_cnt -bash: echo: write error: Device or resource busy
0

Later, on my second try, a few hours later, it worked, reporting no error. ..
[maurice@localhost ~]$ su -
Password:
[root@localhost ~]# cd /sys/block/md0/md
[root@localhost md]# cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4]
md0 : active raid1 sda3[0] sdb2[1]

      386403328 blocks [2/2] [UU]

unused devices: <none>
[root@localhost md]# echo check >sync_action; cat mismatch_cnt 0

Quoted 3 lines

I think it's time to be keeping a good backup, and hopefully someone else has a good thought on running this down more.

Thanks, updated that backup at the first sign of trouble

Quoted 2 lines
Quoted 1 line

Any thoughts on that?

Quoted 7 lines
Quoted 2 lines

The only thought I have at the moment is marginal power supply, and that's just because it can generate all manner of odd behaviors, rather than any other hints. Sorry.

Yeah. I am going to replace *both* disks, and then run the manufacturers utility (Seatest) on them.

Quoted 1 line

If you aren't getting errors from SMART or logs, and I don't remember you sending me that info, I'm not sure how you determine which drive is the problem.

Exactly.

Thanks a LOT for trying, Bill..

Actually, my though is that you may not actually be getting hardware errors, which is why they are not being report by either the kernel or SMART. That's why I thought of memory and/or power issues, either of which could cause what you are seeing.

Guess I have to leave it there, maybe someone else will have a thought.

Signature · 3 lines
Bill Davidsen <[email protected]>
 "Woe unto the statesman who makes war without a reason that will still
 be valid when the war is over..." Otto von Bismark 

A message that is not in the archive (sent off-list or not yet received): [email protected]

#14 lore raw
Quoted 21 lines · Maurice Hilarius

Hi all.

With much appreciated help from Bell Davidsen and Justin Piszcz I recently dealt with a problem with a RAID1 set, caused by a failing hard disk.

At the end, there is one question remaining, which I think is quite important:
When one has a RAID5 or RAID6, and a disk starts "acting up" mdadm rapidly kicks out the offending device. Some might say "too easily" but that is another thread.

On a RAID1 set, until the failing disk completely "packs it in" it remains part of the RAID.

Why??

Some more background:
Since the issue was reported and explored I have recreated this on a test machine.
Installed RAID1 with one known good and one know error prone drive.
Easy to do as the error drive has a thermal issue.
Keep it cold, no problems, but after 30 minutes use in a +25C room it start to generate data errors.
I reproduced exactly the problem I saw before:
Data errors occur, the other drive in the RAID1 set gets "infected" with the bad data, and the file system will get corrupted. On BOTH drives.

Quoted 7 lines

This is highly reproducible.

In summary:
1) RAID1 lacks significant protection from the effects of a data error condition on a failing drive
2) I recommend anyone using madadm refrain from using RAID1 until this issue is addressed and resolved.

Thanks again.

I can confirm this, until you actually REBOOT the host with RAID1 only then will it kick it out. Whereas with RAID5, I experienced the same thing, it kicks it out right away, would need to wait for the linux-raid/developers to answer this one.

Justin.

A message that is not in the archive (sent off-list or not yet received): [email protected]

#16 lore raw
Quoted 35 lines · Maurice Hilarius
Quoted 34 lines · Justin Piszcz
Quoted 21 lines · Maurice Hilarius

Hi all.

With much appreciated help from Bell Davidsen and Justin Piszcz I recently dealt with a problem with a RAID1 set, caused by a failing hard disk.

At the end, there is one question remaining, which I think is quite important:
When one has a RAID5 or RAID6, and a disk starts "acting up" mdadm rapidly kicks out the offending device. Some might say "too easily" but that is another thread.

On a RAID1 set, until the failing disk completely "packs it in" it remains part of the RAID.

Why??

Some more background:
Since the issue was reported and explored I have recreated this on a test machine.
Installed RAID1 with one known good and one know error prone drive.
Easy to do as the error drive has a thermal issue.
Keep it cold, no problems, but after 30 minutes use in a +25C room it start to generate data errors.
I reproduced exactly the problem I saw before:
Data errors occur, the other drive in the RAID1 set gets "infected" with the bad data, and the file system will get corrupted. On BOTH drives.

Quoted 7 lines

This is highly reproducible.

In summary:
1) RAID1 lacks significant protection from the effects of a data error condition on a failing drive
2) I recommend anyone using madadm refrain from using RAID1 until this issue is addressed and resolved.

Thanks again.

I can confirm this, until you actually REBOOT the host with RAID1 only then will it kick it out. Whereas with RAID5, I experienced the same thing, it kicks it out right away, would need to wait for the linux-raid/developers to answer this one.

Quoted 8 lines
Quoted 2 lines

Justin.

Actually reboot does not help me.
mdadm seems to NEVER "kick out" the bad disk.
Even when it is horribly erroring.

I think this is a CRITICAL problem, as, if one is using RAID1 thinking it will enhance their data reliability, they stand a very good chance of getting a nasty surprise.

Yikes, what kernel+mobo+chipset+drives are in use (the developers will want to know) also are you using drives on different channels? Or e.g., two drives on one ide cable? (To summarize for the developers)

Justin.

#17 lore raw
Quoted 49 lines · Justin Piszcz

To: Maurice Hilarius <[email protected]>
From: Justin Piszcz <[email protected]>
Subject: Re: Question: how to identify failing disk in a RAID1

Quoted 41 lines · Maurice Hilarius
Quoted 27 lines · Justin Piszcz
Quoted 23 lines · Maurice Hilarius

Hi all.

With much appreciated help from Bell Davidsen and Justin Piszcz I recently dealt with a problem with a RAID1 set, caused by a failing hard disk.

At the end, there is one question remaining, which I think is quite important:
When one has a RAID5 or RAID6, and a disk starts "acting up" mdadm rapidly kicks out the offending device. Some might say "too easily" but that is another thread.

On a RAID1 set, until the failing disk completely "packs it in" it remains part of the RAID.

Why??

Some more background:
Since the issue was reported and explored I have recreated this on a test machine.
Installed RAID1 with one known good and one know error prone drive.
Easy to do as the error drive has a thermal issue.
Keep it cold, no problems, but after 30 minutes use in a +25C room it start to generate data errors.
I reproduced exactly the problem I saw before:
Data errors occur, the other drive in the RAID1 set gets "infected" with the bad data, and the file system will get corrupted. On BOTH drives.

This is highly reproducible.

Quoted 9 lines
Quoted 5 lines

In summary:
1) RAID1 lacks significant protection from the effects of a data error condition on a failing drive
2) I recommend anyone using madadm refrain from using RAID1 until this issue is addressed and resolved.

Thanks again.

I can confirm this, until you actually REBOOT the host with RAID1 only then will it kick it out. Whereas with RAID5, I experienced the same thing, it kicks it out right away, would need to wait for the linux-raid/developers to answer this one.

Justin.

Actually reboot does not help me.
mdadm seems to NEVER "kick out" the bad disk.
Even when it is horribly erroring.

Quoted 5 lines
Quoted 2 lines

I think this is a CRITICAL problem, as, if one is using RAID1 thinking it will enhance their data reliability, they stand a very good chance of getting a nasty surprise.

Yikes, what kernel+mobo+chipset+drives are in use (the developers will want to know) also are you using drives on different channels? Or e.g., two drives on one ide cable? (To summarize for the developers)

Justin.

I'm now looking at using smartmontools to monitor my hard drive's status, maybe instead of using RAID1 arrays.

http://en.wikipedia.org/wiki/S.M.A.R.T.

http://smartmontools.sourceforge.net/

It appears that smartmontools will not work with the linux software RAID layer. So I guess I need to make a choice of which one to use - smartmontools or RAID1 mirrors?

Obviously I don't want to be mirroring corrupted drive data.

It would be nice to be able to use smartmontools to monitor the health of the drives in a RAID1 array. Get the best of both worlds then.

Is there any way that the smartmontools code can be included in the md driver code, to allow mdadm access to the SMART data on a RAID1 set of disks please?

Kind Regards

Keith Roberts

-----------------------------------------------------------------
Websites:
http://www.php-debuggers.net
http://www.karsites.net
http://www.raised-from-the-dead.org.uk

All email addresses are challenge-response protected with TMDA [http://tmda.net]
-----------------------------------------------------------------

#18 lore raw
Quoted 1 line · Keith Roberts

It would be nice to be able to use smartmontools to monitor the health of the drives in a RAID1 array. Get the best of both worlds then.

I have been doing this for years.

What problems are you seeing using smartd on a RAID1?

Regards,

Richard

#19 lore raw
Quoted 8 lines · Richard Scobie

To: Linux RAID Mailing List <[email protected]>
From: Richard Scobie <[email protected]>
Subject: Re: Question: how to identify failing disk in a RAID1

Quoted 1 line · Keith Roberts

It would be nice to be able to use smartmontools to monitor the health of the drives in a RAID1 array. Get the best of both worlds then.

Quoted 7 lines

I have been doing this for years.

What problems are you seeing using smartd on a RAID1?

Regards,

Richard

Reading the documentation for smartmontools I got the impression that it cannot work with RAID controllers, apart from 3ware and some Highpoint. Maybe I'm getting mixed up with hardware raid?

So is it safe to use all features of smartmontools, including running tests, on a Linux software RAID1 array?

Kind Regards

Keith Roberts

-----------------------------------------------------------------
Websites:
http://www.php-debuggers.net
http://www.karsites.net
http://www.raised-from-the-dead.org.uk

All email addresses are challenge-response protected with TMDA [http://tmda.net]
-----------------------------------------------------------------

#20 lore raw

Keith Roberts wrote:
[]

i started writing a reply but later noticed this:

Quoted 2 lines

All email addresses are challenge-response protected with TMDA [http://tmda.net]

And removed the reply. Don't outsource YOUR mail filtering to everyone else. Thank you.

/mjt

#21 lore raw
In reply to Keith Roberts
Quoted 1 line · Keith Roberts

Reading the documentation for smartmontools I got the impression that it cannot work with RAID controllers, apart from 3ware and some Highpoint. Maybe I'm getting mixed up with hardware raid?

Hardware controllers are a different story, (you can add to LSI to the above). There are no problems with md RAID.

Quoted 1 line

So is it safe to use all features of smartmontools, including running tests, on a Linux software RAID1 array?

No problems at all that I am aware of. I run smartd and perform long self checks weekly on all drives I have in live RAID 1 and 5 arrays.

Regards,

Richard

#22 lore raw
In reply to Keith Roberts
Quoted 1 line

Is there any way that the smartmontools code can be included in the md driver code, to allow mdadm access to the SMART data on a RAID1 set of disks please?

eh? smart monitors disks. the disks that comprise your raids are still available as disks, and smart can monitor them just fine...