We're considering using an OpenSolaris server as a backup server. Some of the servers to be backed up would be Linux and Windows servers, and potentially Windows desktops as well. What I had imagined was that we could copy files over to the ZFS-based server nightly, take a snapshot, and only the blocks that had changed of the files that were being copied over would be stored on disk.
What I found was that you can take a snapshot, make a small change to a large file on a ZFS filesystem, take another snapshot, and you'll only store a few blocks extra. However, if you copy the same file of the same name from another source to the ZFS filesystem, it doesn't conserve any blocks. To a certain extent, I understand why - when copying a file from another system (even if it's the same file or a slightly changed version of the same file), the filesystem actually does write to every block of the file, which I guess marks all those blocks as changed. Is there any way to have ZFS check to realize that in fact the blocks being copied from another system aren't different, or that only a few of the blocks are different? Perhaps there's another way to copy the file across the network that only copies the changed blocks. I believe rsync can do this, but some of the servers in question are Windows servers and rsync/cygwin might not be an option. -- This message posted from opensolaris.org _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss