I haven’t been able to find good documentation about whether or not Rockstor allows pools to be downgraded or shrunk, although I know BTRFS supports this function. (1) Can you permanently remove a disk from a pool (thus shrinking it) without the pool living in a permanently degraded state? (2) Can you replace a disk with a smaller disk, so long as the small disk has enough capacity to store the existing data?
If yes to either, what are the steps to do this in the GUI?
I think the preferred method for replacing a disk with a smaller one is to first add the smaller one, rebalance, and then remove the larger one, which in turn should trigger another rebalance to move the data off of the drive to be removed. See the Pool resizing section.
Hope that helps, if not then it would be great to hear your suggestions as to where these instructions fall short as the docs are regularly updated with suggestions from the community.
What is the best procedure if I don’t have a spare SATA port available to do what you suggested above? Can I just switch the disks and rebalace or will I be likely to encounter an error? In other words, should I always leave a spare SATA port on my Rockstor machine?
In theory it should be possible to remove the disk and rebuild to the new one, if you have the necessary redundancy. It would be the same as to replace a bad disk.
I once expanded my pool by using an usb to sata converter, and adding a disk to that. It worked perfectly, and could be the easy way out.