I've had Cygwin running on a Windows XP workstation for years using rsync as my primary backup tool for my data files. The workstation just crashed with a hard drive failure, I've replaced the drive and so on. Initially, I was recovering most of the files with WinSCP (5.0.5) from the backup server.
While this was going on, I was working on the script to recover the files (essentially swapping the arguments to the rsync script I used for backup). As I was testing this on already-recovered files (via WinSCP) I noticed that some needed to be transferred again. To make a long story short, rsync (via Cygwin) has a different sense of time than WinSCP or Windows for files modified during summer time. For example, the file 100_1164.JPG copied by WinSCP reports a timestamp of 2005-09-01 10:46, which is consistent with the EXIF data in the file, and consistent with Windows XP's report of the time 10:46. Meanwhile, rsync belives the file is different and looks to update it. Furthermore, ls reports the wrong time (via --full-time) as 11:46 -0400. Yes, ls has the right timezone offset (it was summer time in NYC on 2005-09-01), but the time itself is wrong. Even when I precede the command with TZ=UTC0, the UTC time reported by ls is wrong (says 15:46, should be 14:46). I've read previous posts on this problem in a variety of places and they mostly suggest that one use "--modify-window=3601" or something like that to make timestamps fuzzy. In my opinion, that is the wrong solution because the rsync client (i.e., the files being backed up) will record the wrong time on the rsync server because the rsync client itself has the wrong sense of time. And, as I pointed out above, the ls command has the same problem, too. My sense is the implementation of the stat() system call is wrong because even with the TZ set to UTC, it still reports the wrong time. Now this all used to work nicely with Cygwin before. I don't know exactly the prior version of Cygwin, but I had downloaded it in 2006-11. My present version of Cygwin, which was downloaded yesterday is: DLL version: 1.7.11. The current version of rsync is 3.0.9-1. Is this fixed by a new release or a different configuration? Please don't respond with "windows is stupid" because (1) it's cygwin's job to figure out these quirks with Windows, (2) other tools get this right (e.g., WinSCP), and (3) it used to work right on old versions of cygwin (I've been using cywin rsync for at least a dozen years). I have several million files to back up (with integrity), so I need an rsync-like solution. Thank you, in advance, for your help and insight. Frank Farance -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple