* Growing Array (More Devices) - new devices are slightly smaller than the existing drives, unable to shrink array @ 2013-09-28 14:49 Matt Callaghan 2013-09-28 15:28 ` Robin Hill 0 siblings, 1 reply; 3+ messages in thread From: Matt Callaghan @ 2013-09-28 14:49 UTC (permalink / raw) To: linux-raid Hello mdadm Linux-RAID experts; My Goal: Expand (grow) my array from 6xHDD (RAID6) to 8xHDD (RAID6) This is my root cause problem: when I went to try to add the new drive (already formatted for Linux RAID partition): fermulator@fermmy-server:~$ sudo mdadm --add /dev/md2000 /dev/sdq1 mdadm: /dev/sdq1 not large enough to join array As I have researched and learned, I need to: A) shrink the filesystem (ext4) -- done (shrunk by a generous 1.6GB) B) shrink the array size -- incomplete (unable to proceed, the --grow command doesn't do anything) I've been following this guide: http://webapp5.rrz.uni-hamburg.de/SuSe-Dokumentation/manual/sles-manuals_en/manual/raidresize.html#resizedecrraid This pastebin shows my array details, the 'existing' drives (fdisk) and 'new' drives (fdisk) - http://pastebin.com/U04VJpE4 Any ideas? ~Matt ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Growing Array (More Devices) - new devices are slightly smaller than the existing drives, unable to shrink array 2013-09-28 14:49 Growing Array (More Devices) - new devices are slightly smaller than the existing drives, unable to shrink array Matt Callaghan @ 2013-09-28 15:28 ` Robin Hill 2013-09-29 2:14 ` Matt Callaghan 0 siblings, 1 reply; 3+ messages in thread From: Robin Hill @ 2013-09-28 15:28 UTC (permalink / raw) To: Matt Callaghan; +Cc: linux-raid [-- Attachment #1: Type: text/plain, Size: 2338 bytes --] On Sat Sep 28, 2013 at 10:49:49AM -0400, Matt Callaghan wrote: > Hello mdadm Linux-RAID experts; > > My Goal: Expand (grow) my array from 6xHDD (RAID6) to 8xHDD (RAID6) > > This is my root cause problem: when I went to try to add the new drive > (already formatted for Linux RAID partition): > > fermulator@fermmy-server:~$ sudo mdadm --add /dev/md2000 /dev/sdq1 > mdadm: /dev/sdq1 not large enough to join array > > As I have researched and learned, I need to: > A) shrink the filesystem (ext4) -- done (shrunk by a generous 1.6GB) > B) shrink the array size -- incomplete (unable to proceed, the --grow > command doesn't do anything) > > I've been following this guide: > http://webapp5.rrz.uni-hamburg.de/SuSe-Dokumentation/manual/sles-manuals_en/manual/raidresize.html#resizedecrraid > > > This pastebin shows my array details, the 'existing' drives (fdisk) and > 'new' drives (fdisk) - http://pastebin.com/U04VJpE4 > > Any ideas? > Firstly, your new drives are exactly the same size as the old ones: Disk /dev/sdk: 2000.4 GB, 2000398934016 bytes Disk /dev/sdq: 2000.4 GB, 2000398934016 bytes Your partition sizes are different though, probably because newer versions on fdisk default to a higher start point. You can replicate the partitions from the old disks onto the new ones using sfdisk: sfdisk -d /dev/sdk | sfdisk /dev/sdq You can do the same thing manually using fdisk - just make sure you set the units to sectors (fdisk -u=sectors) as the cylinder information differs between the disks (and is obsolete and meaningless). If you do want to stick with the partitions you have and continue with shrinking the array, the value passed with the "-z" parameter is the device size, not the array size. You're passing a value larger than the disk size, so it's being ignored. It also needs to be a multiple of the chunk size (64k in your case). So you need to take your 7812441960, divide by the number of active disks (4) and round up to the nearest 64k. This gives you a new device size of 1953110528. Cheers, Robin -- ___ ( ' } | Robin Hill <robin@robinhill.me.uk> | / / ) | Little Jim says .... | // !! | "He fallen in de water !!" | [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Growing Array (More Devices) - new devices are slightly smaller than the existing drives, unable to shrink array 2013-09-28 15:28 ` Robin Hill @ 2013-09-29 2:14 ` Matt Callaghan 0 siblings, 0 replies; 3+ messages in thread From: Matt Callaghan @ 2013-09-29 2:14 UTC (permalink / raw) To: linux-raid Fantastic thanks Robin! I hadn't noticed the change in the start position, thanks for that. By following your suggestion of copying the partition from existing disk to new disk using sfdisk, I was able to successfully create drives with the exact same number of blocks. Subsequently, the array is rebuilding with 2x more drives :) md2000 : active raid6 sdr1[7] sdq1[6] sdk1[0] sdm1[2] sdn1[3] sdj1[5] sdi1[4] sdl1[1] 7814053632 blocks super 1.1 level 6, 64k chunk, algorithm 2 [8/8] [UUUUUUUU] [>....................] reshape = 0.1% (3861120/1953513408) finish=1964.3min speed=16540K/sec Thank you -------- Original Message -------- From: Robin Hill <robin@robinhill.me.uk> Sent: Sat 28 Sep 2013 11:28:57 AM EDT To: Matt Callaghan <matt_callaghan@sympatico.ca> Cc: linux-raid@vger.kernel.org Subject: Re: Growing Array (More Devices) - new devices are slightly smaller than the existing drives, unable to shrink array > On Sat Sep 28, 2013 at 10:49:49AM -0400, Matt Callaghan wrote: Hello mdadm Linux-RAID experts; My Goal: Expand (grow) my array from 6xHDD (RAID6) to 8xHDD (RAID6) This is my root cause problem: when I went to try to add the new drive (already formatted for Linux RAID partition): fermulator@fermmy-server:~$ sudo mdadm --add /dev/md2000 /dev/sdq1 mdadm: /dev/sdq1 not large enough to join array As I have researched and learned, I need to: A) shrink the filesystem (ext4) -- done (shrunk by a generous 1.6GB) B) shrink the array size -- incomplete (unable to proceed, the --grow command doesn't do anything) I've been following this guide: http://webapp5.rrz.uni-hamburg.de/SuSe-Dokumentation/manual/sles-manuals_en/manual/raidresize.html#resizedecrraid This pastebin shows my array details, the 'existing' drives (fdisk) and 'new' drives (fdisk) - http://pastebin.com/U04VJpE4 Any ideas? Firstly, your new drives are exactly the same size as the old ones: Disk /dev/sdk: 2000.4 GB, 2000398934016 bytes Disk /dev/sdq: 2000.4 GB, 2000398934016 bytes Your partition sizes are different though, probably because newer versions on fdisk default to a higher start point. You can replicate the partitions from the old disks onto the new ones using sfdisk: sfdisk -d /dev/sdk | sfdisk /dev/sdq You can do the same thing manually using fdisk - just make sure you set the units to sectors (fdisk -u=sectors) as the cylinder information differs between the disks (and is obsolete and meaningless). If you do want to stick with the partitions you have and continue with shrinking the array, the value passed with the "-z" parameter is the device size, not the array size. You're passing a value larger than the disk size, so it's being ignored. It also needs to be a multiple of the chunk size (64k in your case). So you need to take your 7812441960, divide by the number of active disks (4) and round up to the nearest 64k. This gives you a new device size of 1953110528. Cheers, Robin ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-09-29 2:14 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-09-28 14:49 Growing Array (More Devices) - new devices are slightly smaller than the existing drives, unable to shrink array Matt Callaghan 2013-09-28 15:28 ` Robin Hill 2013-09-29 2:14 ` Matt Callaghan
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).