Thank you Roman, the array-size parameter is just what I needed. After 2 rebuilds I've got everything just as I want it now. It still doesn't make sense to me why array-size was required, even after reading the man page. However the array-size parameter appeared to shrink the array temporarily which for some reason allowed the reshape of the array to work down to 4 devices. Since then I was able to re-expand the filesystem, do some filesystem checks and get everything mounted again. Thank you again! On Sat, Jan 19, 2019 at 4:09 PM Andreas Klauer <Andreas.Klauer@xxxxxxxxxxxxxx> wrote: > > On Sat, Jan 19, 2019 at 09:52:11PM +0500, Roman Mamedov wrote: > > Read `man mdadm` for --size. What you need is --array-size. > > mdadm should even be nice enough to provide the exact size required > to make the operation. > > | # mdadm --grow /dev/md42 --raid-devices=4 > | mdadm: this change will reduce the size of the array. > | use --grow --array-size first to truncate array. > | e.g. mdadm --grow /dev/md42 --array-size 5860011008 > > (This is just an example.) > > You have to be really, really sure your filesystem does not exceed > the new size. > > I think mdadm actually accepts G units here, so if you did > a resizefs 2345G you can use --array-size=2345G as well > (and mdadm will still complain if it's not small enough > when trying to reduce number of devices afterwards) > > Why not switch to RAID-5 instead? > > Regards > Andreas Klauer -- ------------------------------------------------ Eric C. Pulvino cell: 919.592.5995 ericpulvino@xxxxxxxxx ------------------------------------------------