On 22/04/13 09:33 AM, R. Ramesh wrote:
Reading 4T in parallel is not slower than reading 2T. However, the rebuild is probably slower than a simple copy. Unfortunately any kind of playing around with the array may have resulted in the 2T disk no longer being a viable member of the array. For safety you may want to restart the array with the 2T disk in it to make sure that it is OK before replacing it with the 3T.On 21/04/13 01:11 PM, R. Ramesh wrote:I have a mdadm implemented raid5 with 3 disks (2x 3TiB and 1x 2TiB). Each disk has one partition only for the full size of that disk and the partitions are then combined in to md0. I like to swap out the 2TiB with a new 3TiB. While I do not expect issue with this, a lot of reading about unrecoverable errors spooked me a little on the rebuild/resync. Further, I think it is silly that we need to read all the disks in the original array as part of resync (in a fail+remove+add method of changing disks) Is there a way to avoid resync by doing a dd from 2TB on to the *new* 3TB and then reassembling the array? I mean thisThe problem is the location of the superblocks. If you're prepared to have your system shut down for a while to copy the data, I suggest that you simply remove the 2T disk and add the 3T disk. You will still have your 2T disk so if something fails, you should be able to recover using it. This of course means that you cannot be using your system. The md array cannot be written to or the 2T drive will no longer be usable. So boot from a rescue disk and rebuild the array without mounting it or any partition on it until the rebuild has completed.1. shutdown 2. add 3tb to the PC 3. boot using rescue disk and do not assemble the md0. 4. Copy partition table from one of old 3TiB on to the *new* 3TiB 5. dd 2TiB-part1 to *new* 3TiB-part1 6. shutdown 7. disconnect 2TiB disk 8. restart to original OS on the disk to find the 3TiB as part of the reassemble 9. Grow the array to full sizeSince the above is not suggested anywhere I could find, I like to know what I am missing as this seems too easy to me.Ramesh
If there are no writes and the 2T drive is part of the array before the rebuild, it can be put back in should the rebuild fail. You may have to tell the RAID array that it is clean when you add it back in.