On Tue, Oct 21, 2008 at 09:38:17AM +0100, David Greaves wrote:
The main issue is that the drive being replaced almost certainly has a bad block. This block could be recovered from the raid5 set but won't be. Worse, the mirror operation may just fail to mirror that block - leaving it 'random' and thus corrupt the set when replaced.
False, if SMART reports the drive is failing, it just means the number of _correctable_ errors got too high, remember that hard drives (*) do use ECC and autonomously remap bad blocks. You replace a drive based on smart to prevent it developing bad blocks. Ignoring the above, your scenario is still impossible, if you tried to mirror a source drive with a bad block, md will notice and fail the mirroring process. You will never end up with one drive with a bad block and the other with uninitialized data. If what you are really worried about is not bad block, but silent corruption, you should run a check (see sync_action in /usr/src/linux/Documentation/md.txt) L. (*) note that i don't write 'modern hard drives'. -- Luca Berra -- bluca@xxxxxxxxxx Communication Media & Services S.r.l. /"\ \ / ASCII RIBBON CAMPAIGN X AGAINST HTML MAIL / \ -- 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