Re: [zfs-discuss] Re: Best practice for moving FS between pool on same machine?
Sorry I can't volunteer to test your script. I want to do the steps by hand to make sure I understand them. If I have to do it all again, I'll get in touch. Thanks for the advice! --chris Constantin Gonzalez wrote: Hi, Chris Quenelle wrote: Thanks, Constantin! That sounds like the right answer for me. Can I use send and/or snapshot at the pool level? Or do I have to use it on one filesystem at a time? I couldn't quite figure this out from the man pages. the ZFS team is working on a zfs send -r (recursive) option to be able to recursively send and receive hierarchies of ZFS filesystems in one go, including pools. So you'll need to do it one filesystem at a time. This is not always trivial: If you send a full snapshot, then an incremental one and the target filesystem is mounted, you'll likely get an error that the target filesystem was modified. Make sure the target filesystems are unmounted and ideally marked as unmountable while performing the send/receives. Also, you may want to use the -F option to receive which forces a rollback of the target filesystem to the most recent snapshot. I've written a script to do all of this, but it's only "works on my system" certified. I'd like to get some feedback and validation before I post it on my blog, so anyone, let me know if you want to try it out. Best regards, Constantin ___ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
[zfs-discuss] Re: Best practice for moving FS between pool on same machine?
Thanks, Constantin! That sounds like the right answer for me. Can I use send and/or snapshot at the pool level? Or do I have to use it on one filesystem at a time? I couldn't quite figure this out from the man pages. --chris This message posted from opensolaris.org ___ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
[zfs-discuss] Best practice for moving FS between pool on same machine?
What is the best (meaning fastest) way to move a large file system from one pool to another pool on the same machine. I have a machine with two pools. One pool currently has all my data (4 filesystems), but it's misconfigured. Another pool is configured correctly, and I want to move the file systems to the new pool. Should I use 'rsync' or 'zfs send'? What happens is I forgot I couldn't incrementally add raid devices. I want to end up with two raidz(x4) vdevs in the same pool. Here's what I have now: B# zpool status pool: dbxpool state: ONLINE scrub: none requested config: NAMESTATE READ WRITE CKSUM dbxpool ONLINE 0 0 0 raidz1ONLINE 0 0 0 c1t4d0 ONLINE 0 0 0 c2t6d0 ONLINE 0 0 0 c2t1d0ONLINE 0 0 0 c2t4d0ONLINE 0 0 0 errors: No known data errors pool: dbxpool2 state: ONLINE scrub: resilver completed with 0 errors on Tue Jun 19 15:16:19 2007 config: NAMESTATE READ WRITE CKSUM dbxpool2ONLINE 0 0 0 raidz1ONLINE 0 0 0 c1t2d0 ONLINE 0 0 0 c1t5d0 ONLINE 0 0 0 c2t5d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 errors: No known data errors --- 'dbxpool' has all my data today. Here are my steps: 1. move data to dbxpool2 2. remount using dbxpool2 3. destroy dbxpool1 4. create new proper raidz vdev inside dbxpool2 using devices from dbxpool1 Any advice? I'm constrained by trying to minimize the downtime for the group of people using this as their file server. So I ended up with an ad-hoc assignment of devices. I'm not worried about optimizing my controller traffic at the moment. This message posted from opensolaris.org ___ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss