On 08/11/2011 10:56 AM, Daniel Smedegaard Buus wrote:> If you have your six 2TB drives and your 6 3TB drives, you can just
Post by Daniel Smedegaard Buususe dd to mirror the smaller drives onto the larger ones, and then use
a partitioning tool to resize the 2TB partitions on the 3TB drives to
fill the entire space. ZFS will then automatically expand when you
import the pool afterwards.
Why would anyone use dd -- and loose the protection by checksumming
You could easily
zpool attach poolname /dev/old /dev/new
zpool detach poolname /dev/old
You can use attach to mirror a RAIDZ pool? Are you sure about this?
AFAIK it applies only to attaching extra devices to mirror pools...
How do you do that in practice? And can you do that with six devices
in one go? Otherwise, you'd be running 6 times resilvering which could
take forever.
While dd doesn't protect any data, what you're mirroring is a vdev
member, not the pool data. So in a subsequent scrub on a RAIDZ2 pool,
well, I'm not a statistician, but I'd say the chances of dd causing
errors in three members at the exact same platter location, are pretty
darn slim - probably slimmer than me getting hit by an airplane by
tomorrow :) Plus, you'd still have your old pool in case anything goes
wrong. If something goes wrong while attaching/mirrorring/detaching/
resilvering 6 drives in sequence, there'll be no backup pool to go to.
* reliability (no bit's can be lost since there is end to end
checksumming)
* performance benefits (only blocks actually in use will be copied,
possibly defragmenting them on the fly
- it will restart after the reboot, without any risk
Unless it doesn't, in which case your pool is gone :)
- there won't be a risk of corruption (that you'd have
potentially when using dd: dd would create two disks with *IDENTICAL*
vdev labels, where they should actually have unique ID's.
Except the point would be to create a duplicate of your pool - so you
would want the identical vdev labels. The old drives should be
properly wiped, though, so there's no confusion if you were to
reinsert them and have them present in your system while an import was
going on.
Once [you get
confused]/[you get zfs-fuse confused] about what disk is the real vdev,
there could be data loss.
Good point, so either way, remember to wipe those old drives (100 megs
at start and end of the raw block device is plenty plenty - done this
myself numerous times). But if there's a smarter attach/detach way to
duplicate your pool, most def that should be the way to go.
I think there could be more relevant points, but I don't have time to
check my thoughts for completeness now - gotta run
Cheers
Seth
--
To post to this group, send email to zfs-fuse-/***@public.gmane.org
To visit our Web site, click on http://zfs-fuse.net/