I have two systems with identical hardware, and I'm trying to clone the zroot storage pool (which currently exists on both machines, and is what each booted from) from one system to the other. I've already done a recursive snapshot of the zroot pool, naming it the "now" snapshot. The command I'm using to try and send/recv is:
However, when I run this, I strangely get:
I'm not sure which machine that error is coming from, or why it's even trying to unmount anything. Poring over the man page hasn't revealed anything obvious, either. Any ideas?
Edit: It appears it's trying to unmount on the recv side, as redirecting the send output to /dev/null doesn't cause an error. It's still not clear why it's trying to unmount though...
Edit2: I'm beginning to think that, unfortunately, it's not possible to recv to any mounted zfs file system. And, since that entire pool needs to be transferred, and that's also the system pool, there's no easy way to accomplish this without installing world in a md device or just booting from the memstick and transferring to the root pool while it's offline using the "live-cd" mode. Can anyone confirm?
zfs send -R zroot@now | ssh foo zfs recv -vFd zroot
However, when I run this, I strangely get:
Code:
cannot unmount '/var/log': Device busy
Edit: It appears it's trying to unmount on the recv side, as redirecting the send output to /dev/null doesn't cause an error. It's still not clear why it's trying to unmount though...
Edit2: I'm beginning to think that, unfortunately, it's not possible to recv to any mounted zfs file system. And, since that entire pool needs to be transferred, and that's also the system pool, there's no easy way to accomplish this without installing world in a md device or just booting from the memstick and transferring to the root pool while it's offline using the "live-cd" mode. Can anyone confirm?