Expanding ZFS vdevs

From OpenZFS on OS X
Jump to: navigation, search

Once you have replaced the drives with larger capacity drives, you can check to see how much the pool can be expanded by issuing zpool list and reading the value under EXPANDSZ.

However, in order to expand a zpool in OS X/macOS to utilize that additional space, we must import the pool using a specific method to refer to the drives (the /dev/disk* method). Otherwise, attempts to use the expanded space will fail since the OS will not report the correct capacity of the drive to OpenZFS on OSX. Assuming you have a pool named tank, which is made up of expanded drives disk2, disk3, disk4, disk5, you will need to execute the following instructions (preferably as the superuser):

zpool export tank 			#export the pool
zpool import -d /dev tank 		#import the pool using /dev/disk* references
zpool online -e tank /dev/disk2 	#bring the disk2 online using all the space available
zpool online -e tank /dev/disk3		#bring the disk3 online using all the space available
zpool online -e tank /dev/disk4 	#bring the disk4 online using all the space available
zpool online -e tank /dev/disk5 	#bring the disk5 online using all the space available

Now executing zpool list should show that the pool is larger and the EXPANDSZ has emptied out. However, because drive order is not guaranteed by the OS, it's best to export the pool and let the pool be re-imported using the unique media identifier as usual.

zpool export tank	#export the pool
zpool import tank	#import the pool with the usual media identifier references

The volume size and available space should also update in Finder and elsewhere in the OS once you complete this step.