Not at present, but it's a good RFE.  Unfortunately it won't be
quite as simple as just adding an ioctl to report the dnode checksum.
To see why, consider a file with one level of indirection: that is,
it consists of a dnode, a single indirect block, and several data blocks.
The indirect block contains the checksums of all the data blocks -- handy.
The dnode contains the checksum of the indirect block -- but that's not
so handy, because the indirect block contains more than just checksums;
it also contains pointers to blocks, which are specific to the physical
layout of the data on your machine.  If you did remote replication using
zfs send | ssh elsewhere zfs recv, the dnode checksum on 'elsewhere'
would not be the same.

Jeff

On Tue, Apr 08, 2008 at 01:45:16PM -0700, asa wrote:
> Hello all. I am looking to be able to verify my zfs backups in the  
> most minimal way, ie without having to md5 the whole volume.
> 
> Is there a way to get a checksum for a snapshot and compare it to  
> another zfs volume, containing all the same blocks and verify they  
> contain the same information? Even when I destroy the snapshot on the  
> source?
> 
> kind of like:
> 
> zfs create tank/myfs
> dd if=/dev/urandom bs=128k count=1000 of=/tank/myfs/TESTFILE
> zfs snapshot tank/[EMAIL PROTECTED]
> zfs send tank/[EMAIL PROTECTED] | zfs recv tank/myfs_BACKUP
> 
> zfs destroy tank/[EMAIL PROTECTED]
> 
> zfs snapshot tank/[EMAIL PROTECTED]
> 
> 
> someCheckSumVodooFunc(tank/myfs)
> someCheckSumVodooFunc(tank/myfs_BACKUP)
> 
> is there some zdb hackery which results in a metadata checksum usable  
> in this scenario?
> 
> Thank you all!
> 
> Asa
> zfs worshiper
> Berkeley, CA
> _______________________________________________
> zfs-discuss mailing list
> zfs-discuss@opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/zfs-discuss
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to