I have a need for a free rsync-like tool for Windows (very preferably with some sort of delta encoding) that supports synchronizing Windows ACLs and can copy open files, probably via VSS/Shadow Volumes. (I have zero budget for this, as it is a one-time project.)

Many tools come close, but fail on one or more of those accounts. I don't have a problem with a multistep procedure, but I want to avoid multiple steps to the sync. That is, I don't want to have to sync files and ACLs separately, as I don't trust that this won't get out of sync.

I found a tool, DISKSHADOW.EXE, that is standard under Windows 2008, that allows me to create and mount a VSS Shadow Copy, so a tool that can do delta updates of changed files while supporting Windows ACLs would be sufficient.

The server I'm working on is Windows Server 2008 (not R2).

  • I remember once seeing rsync set up in Windows 2008 to copy with ACL's (but I'm not certain about VSS). Unfortunately I didn't note any details about how it was done. Fingers crossed someone on here knows how. – Robin Gill Mar 9 '12 at 18:52
  • /sec switch on robocopy will take the acl's and ownerships along. (If the target supports them of course.) – Tonny Mar 9 '12 at 22:34

In particular, I'd be happy to create a VSS snapshot, mount it as a drive letter, and sync from there using something like SyncToy, but I can't find any way to mount a VSS snapshot.

Shadowspawn would do this, though, you'd have to invoke synctoy manually or invoke something else to keep the 'drive letter' open when you're done. Its based off hobocopy, which is also worth taking a look at.

I'd suggest pairing this up with robocopy (does acl aware copying) or something off this SU question - bvckup seems to fit the bill

| improve this answer | |
  • bvckup does seem to be the correct answer, at least as long as it remains free. – wfaulk Mar 12 '12 at 16:04
  • Also, way to bury the lede! – wfaulk Mar 12 '12 at 16:30

I just found DISKSHADOW.EXE, which is, of course, in the stock installation of Windows 2008, so I didn't even have to install anything. (Why is it that you only find things after you ask someone else?)

I'm using it in conjunction with SyncToy right now (which I don't think has any delta encoding features, unfortunately). It even looks as if the whole process might be scriptable. That isn't really a big deal for my particular project, but is nice in general.

I'll come back and update this answer if all goes well.

Update: I ended up using DISKSHADOW and SyncToy (though SyncToy is no better than RoboCopy or anything else, since it doesn't do deltas). It went okay, until I ran into a problem where SyncToy wouldn't copy a file that the Administrator user I was using didn't have access to. It really should have been able to deal with that. It also took too long since it it had to copy a full 20-something GB file instead of just copying changes.

Bvckup, mentioned in JourneymanGeek's answer, seems like it ought to be the more correct answer. I'm using it for a different, but similar, project now.

| improve this answer | |
  • +1 I use Diskshadow+robocopy in a few places. – Zoredache Mar 10 '12 at 0:04

Either Robocopy or Teracopy will do the trick.

| improve this answer | |
  • Unless I'm mistaken, neither of those supports VSS. They also don't support delta encoding, but I didn't make that clear initially. – wfaulk Mar 9 '12 at 16:05
  • 1
    VSS can be done as you already stated through diskshadow. Allthough I seem to recall that the latest robocopy (was it in the w2k8 resource kit?) has VSS support. I don't think I have ever heard of a delta-capable program for Windows. (There are RSYNC builds for Windows but these usually don't handle ACL's properly.) – Tonny Mar 9 '12 at 22:39
  • True. It's basically a toss-up between robocopy and SyncToy. I already had SyncToy configured, though, hoping that it did VSS natively. – wfaulk Mar 9 '12 at 23:37

We use Total Commander all the time: old school Norton Commander like interface, will compare files by date, contents, etc. Recursive. Supports copying of NTFS permissions.


| improve this answer | |
  • No delta copying, which just makes it equivalent to Robocopy and SyncToy. – wfaulk Mar 12 '12 at 16:35

I'm surprised no one has mentioned DFSR yet. It's built into the OS, does delta copies via RDC (Remote Differential Compression), and works just fine with VSS. You've also got granular control over what types of files are copied/ignored as well as replication schedule and bandwidth usage.

| improve this answer | |
  • That looks interesting. Am I correct in assuming you have to set up a DFS environment to make it work? Will it work between two directories on the same computer? – wfaulk Mar 12 '12 at 16:44
  • It's possible to enable DFS Replication without enabling DFS Namespaces, but they're generally used together. You still end up with at least one "DFS Root". As for two folders on the same server, I'm not sure. It doesn't seem like it would be a problem on the surface, but it's not what the feature was designed for. So my gut says probably not. – Ryan Bolger Mar 12 '12 at 17:00

Synctoy seems to be pretty underrated. It uses VSS, not sure about delta encoding though. It can run from command line.

Edit: Didn't read the whole thing. You wouldn't need to mount the VSS Snapshot as Synctoy can use VSS natively.

| improve this answer | |
  • That's actually what I started with. It isn't using VSS for me. Is there some hidden flag I have to enable? – wfaulk Mar 9 '12 at 16:28
  • Again, SyncToy is giving me errors about accessing open files. This would tend to indicate that it's not using VSS. Is there some way to enable VSS support in SyncToy that I'm not seeing? – wfaulk Mar 9 '12 at 17:07
  • I was wrong, I don't think it uses VSS. – churnd Mar 9 '12 at 17:58

What about DeltaCopy? http://forums.aboutmyx.com/forums/posts/list/73.page

| improve this answer | |
  • DeltaCopy doesn't support Windows ACLs – wfaulk Mar 9 '12 at 17:06

The only other tool next to rsync is unison

| improve this answer | |
  • AFAIK, Unison doesn't support VSS. Correct me if I'm wrong. – wfaulk Mar 9 '12 at 17:54
  • It also appears not to support ACLs. – wfaulk Mar 9 '12 at 23:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.