Looking at server logs in search of clues about a recent filesystem corruption incident, I stumbled upon the following messages :
Aug 5 01:06:01 kivu mdadm: RebuildStarted event detected on md device/dev/md0 Aug 5 01:43:01 kivu mdadm: Rebuild20 event detected on md device /dev/md0 Aug 5 02:15:01 kivu mdadm: Rebuild40 event detected on md device /dev/md0 Aug 5 02:59:02 kivu mdadm: Rebuild60 event detected on md device /dev/md0 Aug 5 04:33:02 kivu mdadm: Rebuild80 event detected on md device /dev/md0 Aug 5 05:24:33 kivu mdadm: RebuildFinished event detected on md device/dev/md0
We never asked for a manual rebuild of that RAID array so I started thinking I was on to something interesting. But ever suspicious of easy leads I went checking for some automated actions. Indeed that was a false alarm : I found that a Debian Cron script packaged with mdadm at /etc/cron.d/mdadm contained the following :
# cron.d/mdadm -- schedules periodic redundancy checks of MD devices # By default, run at 01:06 on every Sunday, but do nothing unless # the day of the month is less than or equal to 7. Thus, only run on # the first Sunday of each month. crontab(5) sucks, unfortunately, # in this regard; therefore this hack (see #380425). 6 1 * * 0 root [ -x /usr/share/mdadm/checkarray ] && [ $(date +%d) -le 7 ] && /usr/share/mdadm/checkarray --cron --all --quiet
So there, Google fodder for the poor souls who like me will at some point wonder why their RAID array spontaneously rebuilds…
Now why does the periodic redundancy check appear like a rebuild ? Maybe a more explicit log would be nice there.