atom feed7 messages in org.freebsd.freebsd-fsRe: Increasing ZFS Disk Sizes
FromSent OnAttachments
Tim GustafsonApr 23, 2012 8:22 pm 
Matthew SeamanApr 23, 2012 11:11 pm 
Peter MaloneyApr 23, 2012 11:48 pm 
Daniel KalchevApr 24, 2012 12:00 am 
Johannes TotzApr 24, 2012 6:53 am 
Tim GustafsonApr 24, 2012 7:10 am 
George HartzellApr 24, 2012 12:24 pm 
Subject:Re: Increasing ZFS Disk Sizes
From:Matthew Seaman (m.se@infracaninophile.co.uk)
Date:Apr 23, 2012 11:11:30 pm
List:org.freebsd.freebsd-fs

On 24/04/2012 04:22, Tim Gustafson wrote:

Am I missing anything here, or is the this "safe" way to do this? Do I need to do anything special (other than the gpart bootcode command) to make the new disk bootable? Do I need to do anything special to set up the swap partition? Right now, I have this in my /etc/fstab:

Yes, this is a good way to do this change. The only better way would be to add the 2TB disk to the mirror first -- thus making a three way mirror, let that resilver, and then remove one of the old drives. But that requires you to have available spare disk slots.

/dev/gptid/47bc37af-873b-11e1-b913-003048b98c9e none swap sw 0 0

Would it be safe to change that to:

/dev/ada1p2 none swap sw 0 0

during the operation, and then back to ada0p2 when the re-silvering is complete?

What does swapinfo(8) say? If your system is swapping directly to the partitions on both those drives then you have some work to do. You can't just pull a drive with an active swap area on it -- you should use swapoff(8) to disable the swap area first. That's something that can take some time, lots of IO and is not actually guaranteed to work; in which case you may need to edit /etc/fstab and reboot to free up that swap area.

One thing I'd certainly recommend your doing here is to set up a gmirror across your swap partitions. As it is, despite having your filesystems mirrored using ZFS, you are still vulnerable to system crash should one of your drives fail. To do that:

Halt the system and reboot into single user mode (ie shutdown -r). You want this so that your current swap partitions are not enabled, as you'll need to modify their configuration. Add --

geom_mirror_load="YES"

to /boot/loader.conf One time only, run 'kldload geom_mirror' for the initial setup -- in future this will happen automatically.

Create the mirrored swap by:

# gmirror label -b load -F swap /dev/gpt/swap0 /dev/gpt/swap1

and then modify /etc/fstab so that the swap related line is like so:

/dev/mirror/swap none swap sw 0 0

Then hit ^D to carry on booting as normal.

Cheers,

Matthew