On Fri, Mar 18, 2011 at 5:28 PM, Randy Syring <rsyr...@inteli-com.com> wrote:
> I'm working on a backup solution using the ZFS file system.  The idea is
> somewhat like rdiff-backup, except that the backup tool doesn't need to
> worry about versioning, compressiong, or deduplicating the files.  ZFS will
> handle compression and deduplication.  rsnapshot will handle versioning.
>
> The issue I am running into is that I am not sure how to copy files from
> windows to the Linux and preserve ACLs.  I am thinking about building a
> client for windows machines in python that would be responsible for copying
> the files to the backup server's "staging" area.  It would need to A) use an
> rsync like protocal so only deltas get sent over the network B) use VSS for
> hot-backups and C) preserve ACL info on the backed up files.  I have good
> leads on A & B, but not sure about C, hence this email.
>
> Obviously, it would be ideal if something like this already existed, but I
> am not aware of anything.  rdiff-backup is close, but I just don't need all
> the extra versioning stuff it does.

I would suggest looking at Samba. This would help you solve two problems.

1. Transporting files to the Linux server.
2. The ACL issue, you can use extended ACL support, which, when
integrated with a Windows domain, can map UID/GID to objects in the
domain. Winbind allows this by mapping Windows objects to UID/GID on
the Linux machine through the magic of nsswitch.

Extended acls are then managed Linux-side using setfacl and getfacl. I
have set this up using the ext3 file system, so I am not sure about
ZFS support. I know that samba supports extended ACLs on Solaris ZFS,
but could not find a definitive answer either way when using ZFS on
Linux. Worth a look though.

Another possiblity is to look for an archive format that supports the
meta data you want. For example on Linux tar contains all the modes
and other file meta data needed to restore the files. If there is not
an existing similar archive format you can use on Windows, then you
can "extend" one by appending a .catalog file that contains the
pickled file meta data. Then a simple python module can create the
.catalog file and then create the archive using the regular tool
appending the .catalog to it. Restoring would be equally simple by
extracting the files and then restoring the meta data (and deleting
the .catalog file).
_______________________________________________
python-win32 mailing list
python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to