I have a windows box that I want to sync with a remote computer.
Changes on the windows box should be reflected on the remote computer. Files are never changed remotely so it really just needs to be a one way sync.
I was using a feature of winscp which can keep two directories in sync. The problem is whenever I copy a file locally that is large... winscp tries to access it while it's still being copied. As a result, it pops up an error saying that the file is in use and it can't copy a file... then it stops keeping directories in sync until someone clicks OK on the modal dialog box!!! The winscp solution would be adequate if it just continuously kept trying to copy the file instead of showing an error message. I've searched for an option and surprisingly it doesn't exist.
Since I am looking for a better solution anyway... I'd also like it to run as a service or at least an app that automatically enters the sync mode when started.
The program that monitors for file changes must run on windows. I don't care what service it uses for the file transfer part (FTP vs SCP... etc)
Any suggestions?
rsync is the easiest program to do this with. If your Linux target has rsync on it, you can ssh into it, and use rsync to reverse-mirror your data to it.
What is remote? Is still on the LAN? If it is the LAN, I might just mount the c$ share on the Linux box using cifs, and then just rsync:
On Linux Machine:
You could also install rsync on windows and just do it from there.
Using something like Dropbox would probably be an easy solution if you're just trying to keep a set of files in sync between two machines. There's a 2 GB cap for dropbox unless you're willing to pay for premium service.
Check out SyncBackSE. Been using it for a few years and it works great for backups and folder synchronizations.
Also Dropbox might work for you. If you want instant syncing.
1) rsync would work...install cygwin on Windows and you could have the remote *nix machine pull it's files, or setup a scheduled task on Windows to do the sync...all over SSH so your data is secure. Downside is SSH on cygwin is not exactly fast...I used to backup this way, but found NFS and/or samba to be MUCH faster...but if you're going to be going over the Internet anyway, it probably won't matter much.
2) You could setup a samba share on the remote *nix machine and use iptables/ipfw/pf/whatever to limit what addresses can connect to the port (or limit it in the samba config), and on Windows use Microsoft SyncToy. I use SyncToy to backup my photos from my NAS to a USB drive attached to my desktop...works really well. Again...you'd set this up as a scheduled task to run in Windows.