Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Sep 2016 09:35:21 +0700
From:      Victor Sudakov <vas@mpeks.tomsk.su>
To:        Mike Tancsa <mike@sentex.net>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: complete clone/restore from a ZFS-based system replication stream
Message-ID:  <20160928023521.GA9537@admin.sibptus.transneft.ru>
In-Reply-To: <20160928023144.GA8980@admin.sibptus.transneft.ru>
References:  <20160926154720.GA75556@admin.sibptus.transneft.ru> <688eec35-bc7b-ae05-b765-106933b522d1@sentex.net> <20160927085322.GA96393@admin.sibptus.transneft.ru> <78faa2e2-0e44-27ef-eaf0-0f0fc358cc09@sentex.net> <20160928023144.GA8980@admin.sibptus.transneft.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Victor Sudakov wrote:
> > > 
> > > 1. When you boot from this pool later on a restored system, don't the
> > > "-o altroot=/mnt2 -O canmount=off" options prevent it from
> > > working normally? I gather that "altroot" is not persistent across
> > > reboots, but "canmount" probably is.
> > 
> > Its been a while, but when you do the zfs recv, I am guessing the
> > properties are restored with it ?
> > 
> > > 
> > > 2. If you wanted to check "zfs recv" without actually restoring it,
> > > what what you do? I keep getting the "cannot receive incremental stream" error:
> > 
> > Not sure. When you did this, perhaps you are restoring from an
> > incremental send as opposed to a full send ?
> > 
> > eg
> > 
> > zfs snapshot -r zroot@backup
> > zfs send -R zroot@backup > /nfs-mount-on-backup-server/zroot-full-snap.zfs
> 
> Below is exactly how I create and test the replication stream:
> 
> root@zfs1:~ # zfs send -R zroot@test1 > /mnt/zroot1.zfs
> root@zfs1:~ # zpool create -f -o altroot=/mnt2 -O canmount=off -m none foobar1 vtbd2
> root@zfs1:~ # zfs receive -vFn foobar1 < /mnt/zroot1.zfs 
> would receive full stream of zroot@test1 into foobar1@test1
> would receive full stream of zroot/var@test1 into foobar1/var@test1
> would receive full stream of zroot/var/mail@test1 into foobar1/var/mail@test1
> would receive full stream of zroot/var/crash@test1 into foobar1/var/crash@test1
> would receive full stream of zroot/var/tmp@test1 into foobar1/var/tmp@test1
> would receive full stream of zroot/var/audit@test1 into foobar1/var/audit@test1
> would receive full stream of zroot/var/log@test1 into foobar1/var/log@test1
> would receive full stream of zroot/tmp@test1 into foobar1/tmp@test1
> would receive full stream of zroot/ROOT@test1 into foobar1/ROOT@test1
> would receive full stream of zroot/ROOT/test1@2016-08-22-21:58:22 into foobar1/ROOT/test1@2016-08-22-21:58:22
> cannot receive incremental stream: destination 'foobar1/ROOT/test1' does not exist
> root@zfs1:~ # 
> 
> 
> I don't see anything incremental about it.
> 

And without the -n flag it comes out OK:

root@zfs1:~ # zfs receive -vF foobar1 < /mnt/zroot1.zfs
receiving full stream of zroot@test1 into foobar1@test1
received 41.7KB stream in 1 seconds (41.7KB/sec)
receiving full stream of zroot/var@test1 into foobar1/var@test1
received 41.7KB stream in 1 seconds (41.7KB/sec)
receiving full stream of zroot/var/mail@test1 into foobar1/var/mail@test1
received 44.0KB stream in 1 seconds (44.0KB/sec)
receiving full stream of zroot/var/crash@test1 into foobar1/var/crash@test1
received 43.0KB stream in 1 seconds (43.0KB/sec)
receiving full stream of zroot/var/tmp@test1 into foobar1/var/tmp@test1
received 43.0KB stream in 1 seconds (43.0KB/sec)
receiving full stream of zroot/var/audit@test1 into foobar1/var/audit@test1
received 44.2KB stream in 1 seconds (44.2KB/sec)
receiving full stream of zroot/var/log@test1 into foobar1/var/log@test1
received 200KB stream in 1 seconds (200KB/sec)
receiving full stream of zroot/tmp@test1 into foobar1/tmp@test1
received 48.1KB stream in 1 seconds (48.1KB/sec)
receiving full stream of zroot/ROOT@test1 into foobar1/ROOT@test1
received 41.7KB stream in 1 seconds (41.7KB/sec)
receiving full stream of zroot/ROOT/test1@2016-08-22-21:58:22 into foobar1/ROOT/test1@2016-08-22-21:58:22
received 904MB stream in 67 seconds (13.5MB/sec)
receiving incremental stream of zroot/ROOT/test1@test1 into foobar1/ROOT/test1@test1
received 206KB stream in 1 seconds (206KB/sec)
found clone origin foobar1/ROOT/test1@2016-08-22-21:58:22
receiving incremental stream of zroot/ROOT/default@test1 into foobar1/ROOT/default@test1
received 187KB stream in 1 seconds (187KB/sec)
receiving full stream of zroot/usr@test1 into foobar1/usr@test1
received 41.7KB stream in 1 seconds (41.7KB/sec)
receiving full stream of zroot/usr/ports@test1 into foobar1/usr/ports@test1
received 41.7KB stream in 1 seconds (41.7KB/sec)
receiving full stream of zroot/usr/home@test1 into foobar1/usr/home@test1
received 41.7KB stream in 1 seconds (41.7KB/sec)
receiving full stream of zroot/usr/src@test1 into foobar1/usr/src@test1
received 41.7KB stream in 1 seconds (41.7KB/sec)
root@zfs1:~ # 

but what if I just wanted to test the stream without actually receiving it?

-- 
Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
sip:sudakov@sibptus.tomsk.ru



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160928023521.GA9537>