I'm running a RAID1 array using mdadm on my Ubuntu Hardy 8.04 system. Yesterday morning it had crashed shortly after 01.00am. Looking at the logs showed that, because it was the first Sunday of the month, the checkarray script was started at 1.06am. The system had crashed shortly after that at 01.18. There are no entries in syslog between 01.18.46 and 09.35.38 when I re-booted it. There are no obvious errors in syslog, but the box crashed shortly after arraycheck started.
I suspect the reason it crashed is something to do with the fact that I was running Zoneminder at the time, and the CPU was fairly busy doing motion detection on an MJPEG video stream from a security camera. It's possible that attempting to do an array check at the same time was expecting too much of the system. But that's not really the issue...
My understanding, from what I have read on the subject, is that checkarray runs a parity check on redundant arrays.
I found this link in which the author of the checkarray script says that checkarray is "a script that checks the parity information of redundant arrays (RAID 3,4,5,6)".
Note the absence of RAID 1 in the list of array types that are supposed to be checked.
I had a look at the script, but didn't really understand it and certainly couldn't figure out the detail of what it was doing!
My question is - should checkarray run on a RAID 1 array or not? The author's description seems to say that it shouldn't, but it runs on my Ubuntu 8.04 RAID 1 system.
Can anyone clear this up for me?